Iphone 如何使UIImageView以编程方式更改其图像?
我有以下代码:Iphone 如何使UIImageView以编程方式更改其图像?,iphone,uiimageview,Iphone,Uiimageview,我有以下代码: - (void)viewDidLoad { [super viewDidLoad]; landscape.image = [UIImage imageNamed:@"tenerife1.png"]; } 首先,我用IBOutlet创建了一个UIImageView。横向指向该UIImageView。在InterfaceBuilder中,我告诉我在UIImageView中显示一个特定的图像。它永远不会改变。我总是看到我在InterfaceBuilder中指定的图像。但是我想通过编程
- (void)viewDidLoad {
[super viewDidLoad];
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}
首先,我用
IBOutlet
创建了一个UIImageView
。横向指向该UIImageView
。在InterfaceBuilder
中,我告诉我在UIImageView
中显示一个特定的图像。它永远不会改变。我总是看到我在InterfaceBuilder
中指定的图像。但是我想通过编程来设置它。如何执行此操作?更改图像后,请尝试在视图上调用setNeedsDisplay:
[landscape setNeedsDisplay];
添加此代码,它可能会帮助您:
-(void)viewDidAppear:(BOOL)animated
{
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}
您是否可能没有为该nib文件设置自定义视图?我也有同样的问题。我为该视图控制器创建了一个UIview子类,进入Interface Builder并将视图设置为该UIview子类,然后将UIview的导入头添加到控制器类中。这就是它为我所做的不要忘记InterfaceBuilder中imageview和文件所有者之间的连接 在那之后,你只需要:
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
确保插座已连接到IBE中,请参见此------不需要调用setNeedsDisplay我也不这么认为,但我正在查看一些代码,这些代码正在执行完全相同的操作,我正在调用setNeedsDisplay-可能没有必要,但只是将其扔到了那里。