无法读取扩展中的属性值

时间:2016-10-09 08:44:08

标签: ios objective-c oop extension-methods

我已经读到了

  

类扩展程序还专门设计为允许财产公开readonly和私下readwrite

所以我创建了一个clas abc,代码如下:

 @interface abc ()

 @property (strong,nonatomic) NSString *sampleString;

 @end

 @implementation abc


  @end

我想在sampleString

的另一个类子类中加入abc

我创建了pqr

的类abc子类

pqr我正在尝试访问sampleStr但无法执行此操作。

 @implementation cccc

  - (void)accessPrivateMember
 {
   self.sampleStr ; //Not able to acces

 } 

 @end

我的方向是错的吗?

2 个答案:

答案 0 :(得分:0)

您应该将属性放在头文件(.h)中。在您的情况下,sampleString是私有属性,因为它位于实现文件(.m)中。此外,如果您想要访问私有财产,可以使用self.valueForKey("sampleStr")

答案 1 :(得分:0)

您应该在abc的'.h'文件中公开此属性。加上这个:

@property (strong,nonatomic) NSString *sampleString;