如何使用performSelectorInBackground传递整数

时间:2010-09-02 04:21:27

标签: objective-c syntax

我不想用对象传递AnInt。我可以只用Int传递吗?如果没有,我该怎么办?谢谢。

[myController performSelectorInBackground:@selector(passAnInt:) withObject:int];

1 个答案:

答案 0 :(得分:11)

您可以在NSNumber中打包int。如果您的方法签名是:

- (void)passAnInt:(NSNumber *)someNumber;

然后你可以使用:

来调用它
int someInt = 5;
NSNumber *num = [NSNumber numberWithInt:someInt];
[myController performSelectorInBackground:@selector(passAnInt:) withObject:num];

然后,在您的方法中,您可以使用NSNumber的int方法再次取消intValue。有关详情,请参阅NSNumber class reference