我有两个类。一个是使用相同的文件作为第二,与其他一些修改基本建立,但它们基本上是相同的,特别是对于他们的声明文件(有这样的事)...Xcode - 绿色变量x黑色变量
@protocol myClassDelegate <NSObject>
// delegate protocol definition
@end
@interface myClass : UIView {
id myObject;
UIView *oneView;
}
@property(nonatomic,assign) id<myClassDelegate> delegate;
@property(nonatomic,retain) UIView *oneView;
,然后我有@synthesize oneView,委托; on .m
您看到的代码对于这两个类都是通用的。
两个类的实现里面,我多次使用这两个对象,例如:在我的第一类
[delegate doStuff]; // <-- do you see this blue delegate here? Xcode put it green when it is declared on .h first.
,oneView或委托的每次出现都被Xcode中显示为绿色(见下图) 。在第二堂课中,他们显示为黑色。我通常认为这个绿色字是某种承认变量已经在声明中被识别并且对于该类是“全局”的。通常黑色变量表示本地实例。
现在的问题是,我有这些变量之一的问题被释放,没有我的意图,完全在它显示为黑色的类上。
该类中没有释放该变量(dealloc除外),但使用这两个类创建的对象始终在应用程序运行时一直处于活动状态。
什么可能是错的?
在此先感谢。
委托var不能被释放 - 它是一个assign-property! – Felix 2011-01-30 20:30:31
抱歉,代码中存在拼写错误。 oneView被声明为保留。蚂蚁这一个视图在一个类中以黑色显示,而在另一个类中显示为绿色。给我带来问题的班级是变量是黑色的班级。 – Roger 2011-01-30 20:37:40