2
有誰知道爲什麼在setEnabled:仍在工作時NSControl的isEnabled已被刪除?NSControl isEnabled僅適用於OS X v10.0到OS X v10.9
有誰知道爲什麼在setEnabled:仍在工作時NSControl的isEnabled已被刪除?NSControl isEnabled僅適用於OS X v10.0到OS X v10.9
在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;
謝謝!這也適用於「連續」方法/屬性。然而,在'NSControl'文檔*中劃掉的許多其他聲明實際上已被棄用:我試圖在[這個答案]中解碼這一點(http://stackoverflow.com/a/32102638/2047122 )。 – Ashley 2015-08-19 18:12:37