2011-10-26 11 views
1

私のビューコントローラは、このように構成されている:NavigationControllerスタックからメッセージをUIScrollViewに送り返す方法は?

  • 無効にUIScrollViewのスクロール(scrollEnable:

    > UIWindow 
    > - RootViewController with UIScrollView (2 pages, pagingEnabled) 
    > -- UINavigationController (in the first page of the scrolling view) 
    > --- HomePageViewController (plus other ViewControllers pushed on the stack) 
    > -- MinutiaViewController (second page) 
    

    UIScrollViewのは私のシナリオでは、サブビュー [scrollView addSubview:navController.view];

    としてUInavigationControllerを保持している私がしたいです= NO)新しいビューがUINavigationViewControllerにプッシュされると、

  • 新しいビューがポップとUINavigationControllerは

(HomePageViewController)再びそのルートを示している後10

  • (scrollEnable = YES)、再びUIScrollViewのを有効に私は新しいビューを押すとスクロールscrollViewを無効にする方法を考え出しました。

    しかし、新しいビューがスタックから飛び出したときに、scrollViewスクロールを有効にする方法を理解できません。

    は、これまでのところ私は

    1 viewWillAppearをトリガを試してみました。 viewWillDisappear;手動で、 メッセージをHomePageViewControllerのviewWillAppearからUIScrollViewに送信します。 その イベント

    を処理するためにUINavigationControllerデリゲートとしてRootViewControllerを指定

    [self.navigationController.parentViewController performSelector:@selector(enableScrollAgain)]; 
    

    2はいずれも、これまで動いていないようにみえます。すべてのアドバイスを感謝します!

  • 答えて

    0

    通知を使ってみましたか?ナビゲーションコントローラの通知フォームを観察するためにRootViewを追加すると、スクロールを無効にすることができます。 NotificationCenterを調べます。

    希望すると便利です。

    関連する問題