very strange problem. the last thing I can suggest is to load the UIImage in viewDidLoad.. but if you have more images this is very inconvenient. for example:
.h
#import <UIKit/UIKit.h>
@interface FCV2ViewController : UIViewController
{
UIImageView *animalImage;
int imageNumber;
UIImage *hippo00;
UIImage *hippo01;
}
- (IBAction)hippoButtonClicked:(id)sender;
@end
.m
#import "FCV2ViewController.h"
@interface FCV2ViewController ()
@end
@implementation FCV2ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
imageNumber = 0;
animalImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 400, 300, 300)];
[self.view addSubview:animalImage];
hippo00 = [UIImage imageNamed:@"hippo-00.png"];
hippo01 = [UIImage imageNamed:@"hippo-01.png"];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)hippoButtonClicked:(id)sender
{
if (imageNumber == 0) {
animalImage.image = hippo00;
imageNumber++;
}
else if (imageNumber == 1) {
animalImage.image = hippo01;
imageNumber = 0;
}
}
@end