我有一个Singleton类SharedDataObject,它有另一个类对象myClass。 MyClass也有BOOL变量。我为MyClass提供了访问器(非原子,保留),并为myClass实例变量提供了(assign,readwrite)。我也合成了它们中的每一个。但是当我访问它们以读取值或用
写入值时[[SharedDataObject getInstance].myClass available];
OR
[[SharedDataObject getInstance].myClass setAvailable:YES];
它给了我以下警告:
no 'available:' method found
no 'setAvailable' method found
但我可以读取和写入值。我想删除警告。我究竟做错了什么?或者如果它是一种错误的访问方式?
类声明是:
@interface SharedDataObject : NSObject {
MyClass *myClass;
}
@property (nonatomic, retain) MyClass *myClass;
+ (SharedDataObject*) getInstance;
@end
@interface MyClass : NSObject {
BOOL available;
}
@property (assign, readwrite) BOOL available;
@end
答案 0 :(得分:0)
如果你这样做会怎样?
[SharedDataObject getInstance].myClass.available
答案 1 :(得分:0)
如果我很了解你,你的myClass是你的SharedDataObject类的一个类属性,所以你不能访问它,因为它是一个实例属性。
您能否向我们提供课程的完整声明?
[[SharedDataObject myClass] available]
作品?
答案 2 :(得分:0)
检查一下:
MyClass
MyClass*
,而不是某些基类