2 bluetooth99 bluetooth99 于 2012.12.11 09:57 提问

objective-c,不用dot语法

在这行代码中转换一个BOOL值:

 someObject.boolValue = ![someObject boolValue];

怎么样用纯objective语法中重写这行代码,不用dot语法。

2个回答

Chengzi_963
Chengzi_963   2012.12.11 10:16
已采纳
[someObject setBoolValue:![someObject boolValue]];
love_loveec
love_loveec   2012.12.11 10:35

用NSNumber以防BOOL出现空值:

    NSNumber * currValue = [NSNumber numberWithBOOL:[someObject boolValue]];
    NSNumber * yesNum = [NSNumber numberWithBOOL:YES];
    NSNumber * noNum = [NSNumber numberWithBOOL:NO];

    if( NSOrderedSame == [currValue compare:yesNum] ){
        [someObject setBoolValue:[noNum boolValue]];
    }
    else if( NSOrderedSame == [currValue compare:noNum] ){
        [someObject setBoolValue:[yesNum boolValue]];
    }
    else {
        // 设置默认
        [someObject setBoolValue:[yesNum boolValue]];
    }
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!