試試看看這個代碼。
//YourController.h
@interface YourController : UIViewController
{
UIImageView* _photoImageView;
}
@property (retain, nonatomic) IBOutlet UIImageView *photoImageView;
- (IBAction)changeImageAction:(id)sender;
@end
//YourController.m
@synthesize photoImageView = _photoImageView;
- (void)viewDidLoad
{
[super viewDidLoad];
self.photoImageView.image = [UIImage imageNamed:@"img.png"];
}
- (IBAction)changeImageAction:(id)sender {
self.photoImageView.image = [UIImage imageNamed:@"img_2.png"];
}
一些注意事項。
首先,您必須在XCode中正確鏈接您的photoImageView
IBOutlet。爲了測試目的,我創建了一個鏈接到IBAction
的測試按鈕(UIButton
)。 UIImageView
和測試按鈕(我用IB創建的)都是YourController
視圖的子視圖。
請記得將您的圖像導入到您的項目中並釋放內存dealloc
和viewDidUnload
。
- (dealloc)
{
[_photoImageView release];
_photoImageView = nil;
[super dealloc]
}
- (void)viewDidUnload
{
[super viewDidUnload];
self.photoImageView = nil;
}
希望它有幫助。
編輯
的代碼不是圓弧定向但一些修改,有可能還與ARC運行它。
你是說如果你改變iVar的'照片',photoImageView中的圖像也改變了?根據你迄今爲止所展示的內容,它不應該這樣做,但是你可能需要發佈更多的代碼,以便更好地瞭解發生了什麼。您是直接更改iVar還是使用屬性訪問器?如果您使用的是屬性訪問器,它是如何實現的? – 2012-01-14 15:16:03