Den*_*ndy 9 key-value-observing swift
我正在尝试Bool使用KVO在swift中观察值并添加如下dynamic修饰符:
dynamic var isRestricted:Bool?
Run Code Online (Sandbox Code Playgroud)
而编译器说
属性不能标记为动态,因为其类型可以在Objective-C中表示
那我该怎么办?我应该为此更改为NSNumber吗?那么观察价值的最佳做法是什么?
即时通讯使用xcode 7 beta 2
Mar*_*n R 34
实际问题是可选的布尔值不能用Objective-C表示(因此没有标记为动态).使用非可选
dynamic var isRestricted : Bool = false
Run Code Online (Sandbox Code Playgroud)
应该解决问题.
通常,"optionals"的概念不存在Objective-C,但是NSObject对子类实例的可选引用被桥接到Objective-C中的可空对象指针,所以
dynamic var foo: Foo?
Run Code Online (Sandbox Code Playgroud)
如果(且仅)if Foo是子类,则允许NSObject.
| 归档时间: |
|
| 查看次数: |
4483 次 |
| 最近记录: |