我知道使用@property访问器通常是明智的,并且我知道使用self.myView = x而不是mView = x很重要,但是:
myView.frame还不够吗?AtomicElementFlippedView.m文件在TheElements中有self.wikipediaButton.frame=buttonFrame;。如果我得到/设置了我的ivar的属性,而不是ivar本身,那么我不应该省略self吗?[self.wikipediaButton addTarget:...];。但我不应该把self也排除在这里吗?我不应该总是在伊瓦尔上调用一个函数,而不是属性吗?即[wikipediaButton addTarget:...];谢谢!
哑光
发布于 2010-09-25 18:03:08
两者都会起作用的。
在类中使用getter的主要原因是代码更改很容易。如果您决定以不同的方式存储数据,或者根据请求动态地构建数据,那么就有一个变化点。对于视图,它在大多数情况下并不那么重要,但是当您用一个完整的视图层次结构(您的原始视图可能是它的一部分)替换该视图时,它可以派上用场。
发布于 2010-09-25 17:54:24
我想说,您想要使用属性设置程序而不是直接访问ivar的主要原因是一致性。是的,您可以直接访问ivar,这样做通常会很好。但是,我想说,在设置和获取时使用相同的方法在风格上更好。因此,如果在内部使用属性设置器,也应该在内部使用属性获取器。
https://stackoverflow.com/questions/3794850
复制相似问题