iphone - 在另一个类上设置属性

时间:2011-06-04 14:00:16

标签: iphone

我在类上声明了一个属性:

·H

@interface myClass : UIView {
  BOOL doStuff;
}

@property BOOL doStuff;

的.m

@synthesize doStuff;

这个班是另一个班的代表。在另一个类中,我正在尝试设置此属性,执行类似

的操作
[delegate setDoStuff:YES];

我收到一条错误,告诉我“方法-setDoStuff:not found ...”

如何在类上声明属性,以便其他类可以读取和设置它们?

感谢。

3 个答案:

答案 0 :(得分:2)

您的委托是否被声明为“id”类型?
要么在其他类中声明其真实类型MyClass 委托(指向您的myclass),要么为 声明委托必须在声明中实现id的协议 最后(但不是正确的方法)是对它进行类型转换[(MyClass )委托doStuff]。

答案 1 :(得分:1)

确保您正在导入自定义类的标头,并且delegate被声明为该类的实例。

答案 2 :(得分:1)

您还可以在@property中指定 setter 功能的名称。

@property (nonatomic,setter = setMyDoStuff,assign) BOOL doStuff;