UIImageView没有出现

时间:2010-03-11 22:39:24

标签: iphone uiimageview

我正在尝试以编程方式使用UIImageView,但无法让它出现在屏幕上。在我的标题中,我有以下几行:

@interface myClass : UIView {
    UIImageView *imageView;
}
@property (nonatomic, readonly) IBOutlet UIImageView *imageView;

然后在我的viewWillAppear我有以下内容:

self.imageView.frame = CGRectMake(10, 10, 72, 72);
self.imageView.backgroundColor = [UIColor redColor];
[self.imageView setImage:[UIImage imageNamed:@"test-image.png"]];
[containerView addSubview:self.imageView];

这根本不起作用。如果我在viewWillAppear中添加以下行,我可以看到UIImageView:

UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"blue_button_bg.png"]];
[containerView addSubview:imgView];

所以我无法理解为什么实例化UIImageView会起作用,但使用类的ivar却不行。我在这里做错了什么?

非常感谢!

2 个答案:

答案 0 :(得分:0)

取走IBOutlet并添加:

self.imageView = [[ImageView alloc]...]

答案 1 :(得分:0)

您必须实例化所有对象。一种方法,如果你想保持对imageView的引用,是......(不要忘记在dealloc中发布它。)

 imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"blue_button_bg.png"]];
[containerView addSubview:imageView];

你可以解决剩下的问题;)