有谁知道为什么 NSControl 的 isEnabled 在 setEnabled: 仍在工作时已被删除?
user1360618
问问题
174 次
1 回答
2
在 OS X 10.10(和 iOS 8)中,Apple 框架中的许多 getter/setter 方法对都被@property
声明所取代。这既使标头接口更清晰,也使这些 API 导入到 Swift 中更多……嗯,Swifty。
// Before
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)enabled;
// After
@property(getter=isEnabled) BOOL enabled
文档尚未完全更新以反映这一点,因此它错误地显示isEnabled
为已弃用,即使@property
声明意味着您仍然可以执行以下任何操作:
BOOL foo = [control isEnabled];
[control setEnabled:YES];
BOOL bar = control.enabled;
control.enabled = YES;
于 2015-02-24T22:10:28.167 回答