私が作成しているアプリケーションのタブの1つでは、uiscrollviewのサブビューであるuiimageviewがあります。私はuiimageビューの画像を変更するためのスイッチを備えた設定バンドルを持っており、マルチタスク後に画像を更新するのに問題があります。画像は変わりますが、ズームアウトするとバックグラウンドで前の画像を見ることができます。ここに私のコードは設定を変更した後にuiimageviewを更新する
- (void)viewDidAppear:(BOOL)animated
{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
BOOL enabled = [defaults boolForKey:@"enableWinterSchedule"];
if (enabled) {
UIImageView *tempImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"WinterSchedule.png"]];
self.imageView = tempImageView;
} else {
UIImageView *tempImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"FallSpringSchedule.png"]];
self.imageView = tempImageView;
}
scrollView.contentSize = CGSizeMake(imageView.frame.size.width , imageView.frame.size.height);
scrollView.maximumZoomScale = .75;
scrollView.minimumZoomScale = .37;
scrollView.clipsToBounds = YES;
scrollView.delegate = self;
[scrollView addSubview:imageView];
scrollView.zoomScale = .37;
[super viewDidLoad];
[imageView release];
}
ここではいくつかのことが既に間違っています:1)あなたの 'viewDidAppear'メソッドから' [super viewDidLoad] 'を呼び出さないでください。 #2)あなたの 'viewDidAppear'メソッドで' imageView'を作成しているとは思わないので、そこに 'imageView'を解放しないでください。 –
しかし、好みを変更した直後にズームアウトしようとすると、前の画像がバックグラウンドで表示されます。私はviewDidLoadでそれを持っているとき私は完全にこの – slafor