我通过以下方式初始化 View (图像):
Image *myImageView = [[Image alloc]init];
myImageView.myId = randomImageNumber;
[myImageView initWithImage:myImage];
在 Image 类中,我执行 Log(LOG1) 并获取先前设置的 randomImageNumber。 后来,在同一个类中,我做了第二个 Log(LOG2)。 为什么我的第二个日志不再有值(value)?
这是我的类图像的实现文件:
@synthesize myId;
-(id) initWithImage: (UIImage *) anImage
{
NSLog(@"LOG1%d",myId);
if ((self = [super initWithImage:anImage]))
{
self.userInteractionEnabled = YES;
}
return self;
}
}
-(void)touchesBegan...
....
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"LOG2%d",myId);
}
“return self”清空了我在头文件中声明并在初始化时设置的 myId。 我该如何防止呢?
我的头文件是这样的:
@interface Image : UIImageView
{
int myId;
}
@property (assign) int myId;
@end
最佳答案
我想我找到了:
你能检查一下这个变量是不是你的吗?
好 friend 菲尔
关于objective-c - 我的变量在哪里? objective-c ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3942125/