Bir kullanıcı bir düğmeyi tıklattığında önceki görünümü görüntülemek için aşağıdaki kodu kullanıyorumpopviewcontroller viewWillappear'ı çağırmıyor
[self.navigationController popViewControllerAnimated:YES];
Önceki görünümde, viewWillAppear'ı başlangıçta birkaç şeyin üzerine yazdım. Ancak, viewWillAppear çağrılmıyor gibi görünüyor. NSLog'u viewDidload'a yerleştirdim, viewWillAppear, viewDidAppear ve yalnızca viewDidAppear çağrılıyor. Bu normal davranış mı? Varsa, hangi olayı geçersiz kılmalıyım? Böylece başlatmamı yapabilir miyim? Teşekkür ederim.
İstenirse -viewWillAppear bir önceki görünüm için
- (void)viewWillAppear:(BOOL)animated{
NSLog(@"ViewWillAppear");
//[[GameStore defaultStore] resetGame];
[self setHangmanImage];
NSLog([[[GameStore defaultStore] selectedList] label]);
[labelListName setText:[NSString stringWithFormat:@"List Name: %@", [[[GameStore defaultStore] selectedList] label]]];
[labelCurrentIndex setHidden:YES];
[labelCurrentWord setHidden:YES];
[[self navigationController] setNavigationBarHidden:NO];
[FlurryAnalytics logEvent:@"GameViewController - viewWillAppear"];
[self getNewQuestion];
NSLog(@"ViewWillAppear finish");
[super viewWillAppear:YES];
}
Aşağıdaki kod kullanılarak UINavigationalController uygulamasını uygulama temsilcisine kurarım
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
HomeViewController *hv = [[HomeViewController alloc] init];
UINavigationController *navController = [[UINavigationController alloc]
initWithRootViewController:hv];
// You can now release the itemsViewController here,
// UINavigationController will retain it
[hv release];
// Place navigation controller's view in the window hierarchy
[[self window] setRootViewController:navController];
[navController release];
// Override point for customization after application launch.
[self.window makeKeyAndVisible];
return YES;
}
UPDATE
Bilmiyorum Ne oldu ama dün gece simülatörde bir kez daha uygulamayı çalıştırmaya çalıştıktan sonra ve hala bu sorunu yaşıyorsa, her şeyi kurtarmaya karar verdim ve geç kaldığımdan beri bilgisayarımı kapatmaya karar verdim.
Bu sabah bilgisayarımı tekrar xcode açtım, projeyi temizledim ve kurup çalıştırdım ve sorun giderildi ve -viewWillAppear çağrıldı. Ben hiçbir şeyi ve çalışmasını değiştirmedim. NSLog'u -willShowView'a ekledim ve çağrılmadım. Aniden bir manzaranın neden arandığını bilmiyorum.
Sadece meraktan, el ile -viewWillAppear'ı aramayı denediniz mi? – Ricky
viewWillAppear'ı nasıl el ile çağırabilirim? Ben [self.navigationController popViewControllerAnimated: YES] aradığım görünümden çağrı mı? dan? – atbebtg
Yep - ideali ''popViewControllerAnimated:' – Ricky