exc_bad_instruction 将 UIView 中心设置为 cgpoint 时

exc_bad_instruction when setting UIView center to cgpoint

我刚开始学习 Swift,我一直在尝试移动 UIView 以响应触摸。我遇到 exc_bad_instruction 错误。

var location = CGPoint(x: 0, y:0)
@IBOutlet weak var person: UIView!

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    let touch : UITouch! = touches.first

    location = touch.location(in: self.view)

    person.center = location
}

exc_bad_instruction 通常是空指针的提示。确保 Person 不为零。

另外请确保命名您的属性以在开头使用小写字母 - 在本例中为 person。使用 Person 时,您 运行 有调用类型而不是 属性 的风险。

如果您需要进一步的帮助,请编辑您的 post 并添加项目的更多代码示例 - 特别是 Class Person 和整个 UIViewController 其中你用它。

变量位置应该明确声明为 CGPoint:

var location : CGPoint = CGPoint(x:0, y:0)