首页 > 解决方案 > Swift Playgrounds 在以不同速度运行时崩溃

问题描述

我在 viewDidAppear 中有这段代码

    override func viewDidAppear(_ animated: Bool) { 
        BGAmbient.frame = CGRect(x: 0, y: 0, width: arView.center.x*2, height: arView.center.y*2)
        BGAmbient.backgroundColor = UIColor(red: BGred, green: BGgreen, blue: BGblue, alpha: BGalpha)
        arView.addSubview(BGAmbient)
     
        let imageName = "Title.png"
        let image = UIImage(named: imageName)
        let imageView = UIImageView(image: image!)
        var locX: CGFloat = 0
        var locY: CGFloat = 0
        var x: CGFloat = 0.7
        var y:CGFloat = 0.4
        x = arView.center.x - arView.center.x * x
        y = arView.center.y - arView.center.y * y
        var w = arView.center.x * CGFloat(2) * 0.7
        var h = arView.center.y * CGFloat(2) * 0.4
        imageView.frame = CGRect(x: x,
                                 y: y,
                                 width: w, height: h)

  }

我现在在 swift 游乐场的 iPad 上运行它。但是,它总是在arView.addSubView(BGAmbient)或者 let imageView =时崩溃UIImageView(image: image!)

但是,在 Xcode 上运行或在 iPad 上以逐步模式运行时,它不会崩溃。问题是什么?

标签: iosswiftuikitswift-playground

解决方案


如果我将代码放在 Sources 文件夹中,效果很好。似乎这是一个 Swift Playgrounds 错误。


推荐阅读