14

假设在 Apple API 1.0 版中,有一个 NSFoo 类,其属性为“color”。API 1.1 添加了属性“大小”。

我想知道我是否可以使用getter:myFoo.size

[myFoo respondsToSelector:@selector(getSize)] 没有按预期工作。

找出对象是否具有属性的正确方法是什么?谢谢!

4

1 回答 1

36

你很近。您的选择器应该正是您要发送给对象的消息:

if ( [myFoo respondsToSelector:@selector(size)] ) {
    int size = [myFoo size]; // or myFoo.size in dot-notation.
    // ...
}

应该管用。

于 2010-06-17T05:18:01.510 回答