当创建一个新的 Swift Playground/.playgroundbook 打算在 iPad App 上使用时,我经常收到错误消息:
“运行 playground 时出现问题。运行此 playground 时遇到问题。检查您的代码是否有错误。”
我可以追踪到这个问题是在将某些 subview 添加到我的实时 View 时引起的。更准确地说,我的目标是将 UIImage 拆分为多个部分并为它们创建新的 UIImageView:
for x in 0..<parts {
for y in 0..<parts {
//Create UIImageView with cropped image
let pieceView = UIImageView.init(frame: CGRect.init(x: CGFloat(x)*singleSize.width, y:CGFloat(y)*singleSize.height, width: singleSize.width, height: singleSize.height))
let imageRef = image.cgImage!.cropping(to: CGRect.init(x:0, y:0, width: 100, height: 100));
pieceView.image = UIImage.init(cgImage: imageRef!)
//Add them to an array
self.viewArray.append(pieceView)
}
}
这就是事情对我来说变得非常棘手的地方:添加 7 个这些 UIImageView 现在可以毫无问题地工作。但是一旦我想添加 8 个或更多,playground 就会停止工作 并给出错误消息“Problem running playground...”(见上文)
到目前为止我测试了什么:
- 添加具有相同图像的 UIImageViews 不会导致此问题
- 在后台线程中裁剪 UIImage 并在主线程中添加 View 也无济于事
- 创建 UIImageView 而不将它们添加到实时 View 不会导致任何问题
- 代码在 mac playground 上执行时运行良好,无论添加的人如何查看
最佳答案
我在添加多个 UI 元素时遇到了这种 iPad Swift Playground 运行时错误。
该问题是由 playground 属性中“启用结果”的默认设置设置为 ON 引起的。 “启用结果”预览所有内联对象结果的查看器。当您生成许多 UI 元素时,它会使 swift playground 崩溃。
关于ios - Swift Playgrounds 中的观看次数有限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42695165/