2013-04-29 34 views
-1

我有一个问题,访问一个私有实例变量想咨询you.The如下:如何在IOS

A类是从iOS框架,A类的一个实例变量B是不公开的,我可以通过类别C中定义的getter方法来访问实例变量B?类别C是类A的自定义类。

示例,类UIView.can的实例变量_viewDelegate我创建了UIView的类C访问实例变量_viewDelegate?如果在类别C中定义方法 - (UIViewController *)viewDelegate;

ThankYou,First!

+0

嗯,什么?你在问什么? – michaelb958 2013-04-29 05:21:52

+0

对不起,我的英文不是很好!但你应该可以阅读! – xiaojiaxi 2013-04-29 06:01:57

+0

可能的重复[从外部类访问私有变量 - iOS](http://stackoverflow.com/questions/11209843/accessing-private - 变量从 - 一个外部的级-IOS) – Amar 2013-09-25 07:51:14

回答

0

如果问题是“我可以通过类访问私有变量”,那么答案是 - 依赖。

首先,变量必须在.h文件中定义。

如果是,那么如果标记为只读,则只能读取它。例如: @property(非原子,只读)somePropertyOfClassA

否则,你可以读/写直接与酒店没有一个getter/setter方法,例如@属性(非原子)NSInteger的标签

UIView的_viewDelegate是标记为@package,这意味着该成员只能从其定义的框架(即ios框架)访问。