如果声明不适用于NSNumber?

时间:2014-05-11 21:08:31

标签: objective-c if-statement jailbreak nsnumber theos

我是编码新手,无法在任何地方找到准确的答案。如果BOOL为真,我试图让NSNumber返回false。有帮助吗?感谢

static BOOL someBOOL;

%hook  (class I want to hook)

-(void)sampleMethod:(NSNumber *)boolNumber
{
    if (!someBOOL) 
    {
        [NSNumber numberWithBool:NO];
    } 
    else 
    {
        return %orig;
    }
}

%end

1 个答案:

答案 0 :(得分:0)

初始someBOOL

static BOOL someBOOL = YES;

然后

if (!someBOOL) 
{
    return [NSNumber numberWithBool:NO];
} 
else 
{
    return %orig;
}

并将void替换为NSNumber并删除多余的参数

-(NSNumber*)sampleMethod

获取返回值:

NSNumber *n = [self sampleMethod];