Xcode 8.3.2 游乐场实时视图渲染不起作用

Posted

技术标签:

【中文标题】Xcode 8.3.2 游乐场实时视图渲染不起作用【英文标题】:Xcode 8.3.2 playground live view rendering doesn't work 【发布时间】:2017-04-27 09:44:32 【问题描述】:

这段代码在以前版本的 Xcode 中运行良好,但现在它没有显示任何内容。它只显示“正在运行项目”的活动指示器

import UIKit
import PlaygroundSupport

let container = UIView()
container.frame.size = CGSize(width: 215.0, height: 215.0)

var view = UIView()
view.frame.size = CGSize(width: 185.0, height: 185.0)
view.center = container.center
view.layer.cornerRadius = view.frame.size.height/2
view.backgroundColor = UIColor.white

container.addSubview(view)

let scaleAnimation = CABasicAnimation(keyPath: "transform.scale")
scaleAnimation.fromValue = CGFloat(0.6)
scaleAnimation.toValue = CGFloat(1.15)
scaleAnimation.timingFunction = CAMediaTimingFunction(name:    kCAMediaTimingFunctionEaseOut)
scaleAnimation.isRemovedOnCompletion = false

let opacityAnimation = CABasicAnimation(keyPath: "opacity")
opacityAnimation.fromValue = CGFloat(0.0)
opacityAnimation.toValue = CGFloat(0.1)
opacityAnimation.duration = 1
opacityAnimation.isRemovedOnCompletion = false
opacityAnimation.autoreverses = true;


let circleAnimations: CAAnimationGroup = CAAnimationGroup()
circleAnimations.duration = 2
circleAnimations.repeatCount = HUGE;
circleAnimations.animations = [scaleAnimation, opacityAnimation];

view.layer .add(circleAnimations, forKey: "circleAnimations")

PlaygroundPage.current.liveView = container
PlaygroundPage.current.needsIndefiniteExecution = true

这有什么问题?

【问题讨论】:

我已将代码按原样粘贴到 Xcode 8.3.2 (8E2002) 中,它工作得很好。在 macOS 10.12.4 (16E195) 上测试 【参考方案1】:

您需要启用助手编辑器才能看到结果。

查看 > 助理编辑器 > 显示助理编辑器

另见此处: ios Playground doesn't show UI preview

【讨论】:

【参考方案2】:

有时关闭 Playground 并重新启动 Xcode 可以解决问题

【讨论】:

重启 Xcode 修复了实时取景不渲染任何内容的问题

以上是关于Xcode 8.3.2 游乐场实时视图渲染不起作用的主要内容,如果未能解决你的问题,请参考以下文章

xcode 游乐场中的 UITableView 不显示文本/字幕

评论在 Xcode 7 游乐场未显示是标记格式

Xcode 8 图像完成

Xcode滚动视图不起作用

Xcode:滚动视图不起作用

在 Xcode 11 游乐场中使用 SwiftUI