Objective-C类方法:点语法和​​'类属性'

Tim*_*imo 5 autocomplete properties class objective-c

在为iOS编程时遇到以下情况:

我有一个带有类方法的单例类+ (Store*)sharedStore.当我想在单例对象上调用实例方法时,我可以使用点语法来获取该对象,即[Store.sharedStore foo].

但是,在键入点后,Xcode不会自动完成'sharedStore'.另一方面,[[Store sharedStore] foo] 自动完成的!

有没有'类属性'这样的东西?如果我可以sharedStore在类上变成只读属性,则点语法将获得自动完成.

更一般地说,即使这是一种调用(getter)方法的有效方法,Xcode也不会在点语法之后自动完成任何不属性的东西.

任何解决方案,变通方法或信息都表示赞赏.

Tim*_*imo 3

目前,就类获取者而言,我们似乎必须:

  • 在没有自动完成功能的情况下使用此语法: Store.sharedStore; 或者
  • 请改用括号语法:[Store sharedStore].

我最近没有尝试过其他编辑器(例如AppCode)。另一个编辑器可能会自动更正类 getter 上的点语法。

对于什么是正确的、合乎逻辑的或可读的,人们有不同的看法。