我在另一个类中有一个方法,我这样称呼这个方法

[captureView performSelector:@selector(startRecording) withObject:nil afterDelay:1.0];


但是现在想将一个对象传递给此方法,所以我知道我想将其更改为此:

[captureView performSelector:@selector(startRecording) withObject:assest afterDelay:1.0];


但是如果我的方法startRecording看起来像这样

- (bool) startRecording{


为了在此新方法中使用可变资产,我将其更改为什么?

谢谢您的帮助 :)

最佳答案

performSelector:withObject:afterDelay:的文档,“ ...标识要调用的方法的选择器。该方法不应具有明显的返回值,并且应采用id类型的单个参数或不带参数。”

因此,您的方法无法返回BOOL,它需要看起来像这样,

- (void) startRecording:(id) obj{
    ...
}


您还需要在performSelector:@selector(startRecording:)中的选择器名称中添加冒号。

关于ios - 从performSelector传递对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29572741/

10-09 12:27