gpt4 book ai didi

ios - performSelector 抛出无效参数,为什么?

转载 作者:行者123 更新时间:2023-11-28 20:08:58 27 4
gpt4 key购买 nike

这行代码完美运行

[self explodeBomb:obj];

但是如果我用下面的行替换它,我会得到一个 NSInvalidArgument 异常,原因是无法识别的选择器。

 [self performSelector:@selector(explodeBomb) withObject:obj ];

方法定义如下:

 -(void)explodeBomb:(SKNode *)bomb

我知道,这一定是我不理解一些基本的东西。但是为什么我能够毫无问题地直接调用该方法,但是当我尝试使用 performSelector 时它却爆炸了?为了记录 obj 被定义为一个 ID。我尝试更改 explodeBomb 的签名以获取一个 ID,然后在方法中显式地转换它,但这引发了相同的异常。任何人都知道我到底做错了什么?

最佳答案

使用 : 并像下面这样写

 [self performSelector:@selector(explodeBomb:) withObject:obj ];

因为你的方法 explodeBomb 有一个参数所以你必须指定 :

关于ios - performSelector 抛出无效参数,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21014239/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com