Swift 中的“此类与键的键值编码不兼容”错误

XIA*_* LI 4 key-value-observing ios swift

我在 Swift 中收到此错误消息:

由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:'[<Faceit.ViewController 0x7f8f72501e40> setValue:forUndefinedKey:]:此类不符合关键 faceview 的键值编码。

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var faceView: FaceView! {
        didSet{
            updateUI()
        }
    }

    var expression = FacialExpression(eyes: .closed, mouth: .frown) {
        didSet {
            updateUI()
        }
    }

    private func updateUI() {
        switch expression.eyes {
        case .open:
            faceView?.eyesOpen = true
        case .closed:
            faceView?.eyesOpen = false
        case .squinting:
            faceView?.eyesOpen = false
        }
        faceView?.mouthCurvature = mouthCurvatures[expression.mouth] ?? 0.0
    }

    private let mouthCurvatures = [FacialExpression.Mouth.grin:0.5,.frown: -1.0,.smile:1.0,.neutral:0.0,.smirk:-0.5]

}
Run Code Online (Sandbox Code Playgroud)

Bra*_*ton 6

请参阅:线程 1:信号 SIGABRT Xcode 6.1

您必须进入 Interface Builder 并查找一个(或多个)带有警告三角形的插座(点击链接查看屏幕截图)。一旦你删除了那些坏的连接,你要么 (1) 准备好了,因为你已经连接了你的新对象,或者 (2) 你需要建立新的连接,以便正确加载所有元素并且没有警告三角形。