0

これはSOでの繰り返しの質問であることは知っていますが、まだ理解できません。アプリがバックグラウンドになってから戻ってくると、アニメーションが機能しません。アプリを初めて起動すると、ビュー間でプッシュ/ポップ アニメーションを取得できますが、アプリがバックグラウンドになると、アニメーションが停止します。

カスタム ナビゲーション コントローラー クラスを作成し、メソッドを拡張UINavigationControllerして記述しpopViewControllerAnimatedました。

- (UIViewController *)popViewControllerAnimated:(BOOL)animated {
    UIViewController* viewController = [super popViewControllerAnimated:animated];    
    UIViewController* nextViewControler = [[self viewControllers] lastObject];
    [nextViewControler viewWillAppear:animated];    
    [viewController viewWillDisappear:animated];
    return viewController;
}

どんな助けでも大歓迎です。

4

3 に答える 3

6

これは、コードのどこかで、または iOS に決定させる代わりに、対応するものの 1 つへの呼び出しを強制している場合、または との呼び出しを一致させてviewWillAppearいない場合に発生します。YESNO[super viewWillAppear:animated]viewDidAppear

于 2013-04-11T09:39:34.547 に答える
0

UINavigationControllerDelegate プロトコルを使用して、viewWillAppear/viewDidAppear を呼び出してみてください。詳細については、次を参照してください。

http://www.idev101.com/code/User_Interface/UINavigationController/viewWillAppear.html

于 2012-08-07T03:45:38.517 に答える