调用具有关键字"getter = isXXX"的Objective-c属性

Gon*_*Gon 1 cocoa objective-c ios

UIButton有一个属性selected,声明是
@property(nonatomic, getter=isSelected) BOOL selected.

那么调用该属性的方法是正确的?

  1. button.selected
  2. button.isSelected
  3. [button isSelected]

我知道他们在Xcode中都很好,那有什么意义getter=isXXX呢?

Chu*_*uck 5

getter=isSelected位定义getter方法的名称.这就是你写作[button isSelected]而不是写作的原因[button selected].当你写作时button.selected,它会产生一个调用[button isSelected].

至于哪个是对的?它们都是有效的,虽然我更喜欢isSelected变体,因为那是声明的getter,它读起来更自然.