0

ViewWillAppear自動的に呼び出されることはありません手動で呼び出す必要があります。ViewWillDisappearよく呼ばれます。

これをどこでデバッグするかわかりません。

問題は、4.1でアプリケーションを作成したためだと思います。このアプリケーションでは、ユーザーがviewWillAppear明示的に呼び出す必要があります。

viewWillAppear窓との関係で呼ばれるので、窓へviewControllerの出口があるかどうか確認できると思います。

どうすればいいですか?

問題は私の代理人のどこかにあるのではないかと思いました。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [Crashlytics startWithAPIKey:@"a08863b514ef09558ba82fec070cc7468fdbeeae"];
    if(getenv("NSZombieEnabled") || getenv("NSAutoreleaseFreedObjectCheckEnabled"))
    {
        NSLog(@"NSZombieEnabled/NSAutoreleaseFreedObjectCheckEnabled enabled!");
    }

    [self.window addSubview:self.navController.view]; //This seem to be the problem. I should have specified the viewController and not the view

    [self.navController pushViewController:self.MainBadgerApplication animated:YES];
    //[cachedProperties singleton].lastAnchor =[cachedProperties currentLocation];
    [cachedProperties singleton].currentAnchor=[cachedProperties currentLocation];
    self.MainBadgerApplication.selectedIndex=0;
    [BNUtilitiesQuick tabBarController:self.MainBadgerApplication didSelectViewController:self.MainBadgerApplication.selectedViewController];
    [self.window makeKeyAndVisible];

    return YES;
}

[self.window addSubview:self.navController.view]; 問題です。

また、ios5の前に、viewControllerを明示的に呼び出す必要があると聞きました。したがって、ios5とios4用に別のプログラムを作成する必要があります(プログラムに対してviewControllerを2回呼び出すことに危険がないように)

4

1 に答える 1

1

それが問題だと思い[self.window addSubview:self.navController.view];ました。

おそらく。代わりにこれを行う必要があります。

self.window.rootViewController = self.navController;

ビューを追加するだけでは、ViewControllerは階層に正しく配置されません。詳細については、WWDC2011ビューコントローラの封じ込めビデオを参照してください。

于 2012-06-26T09:11:55.960 に答える