当我试图在id类型的对象上调用一个方法时,我收到一个警告(找不到方法).当然不是,但这不是id对象的意义吗?
有没有办法告诉编译器:
"你现在不是我调用这个方法的对象的类,但不要担心,我确定它确实实现了它!" ?
你可以用performSelector?
如果你有一个对象类型,id那么使用它也是个好主意respondsToSelector:)
即
if ([myObject respondsToSelector:@selector(dosomething:)])
myObject performSelector:@selector(doSomething:) withObject:@"hello"];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2574 次 |
| 最近记录: |