我有这段代码:
- (void)viewDidLoad {
[super viewDidLoad];
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}
首先,我使用UIImageView
创建了IBOutlet
。风景指向UIImageView
。在InterfaceBuilder
我告诉我在UIImageView
中显示特定图片。它永远不会改变。我总是看到我在InterfaceBuilder
中指定的图像。但我想以编程方式设置它。我怎么能这样做?
答案 0 :(得分:4)
更改图像后尝试在视图上调用setNeedsDisplay:
[landscape setNeedsDisplay];
答案 1 :(得分:2)
添加此代码,它可能会对您有所帮助:
-(void)viewDidAppear:(BOOL)animated
{
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}
答案 2 :(得分:1)
您是否可能没有为该nib文件设置自定义视图?我有同样的问题。我为该视图控制器创建了一个UIview子类,进入Interface Builder并将视图设置为该UIView子类,然后将UIView的导入头添加到Controller类中。这就是为我做了什么
答案 3 :(得分:1)
不要忘记在InterfaceBuilder中imageview和File的所有者之间的连接。
只有在此之后你才需要:
landscape.image = [UIImage imageNamed:@"tenerife1.png"];