1

タブのセットを持つ UITabBarController があります。それらのいくつかを選択すると、テーブルが表示されます。テーブルのセルに触れると、ユーザーは「pushViewController」を使用してセル自体のオブジェクトの詳細画面に移動します。

別のタブをクリックして詳細ページに移動すると、新しいタブ ページが表示されます。そして、これは問題ありません。クリックして前のタブに戻ると、詳細ページではなくテーブルをもう一度表示したいと思います...

これは可能ですか?

ありがとう!

4

2 に答える 2

1

可能です。コード:

// Called when the user selected a tab. In iOS3+, called even when no change occurs.
- (void)tabBarController:(UITabBarController *)tabbarcontroller didSelectViewController:(UIViewController *)viewController
{
    UINavigationController *nav = (UINavigationController *)viewController;
    [nav popToRootViewControllerAnimated: NO];
}

説明:

  • これは AppDelegate にあります。
  • AppDelegate は UITabBarControllerDelegate です。
  • UITabBarController のデリゲート (InterfaceBuilder 内) を AppDelegate に設定します。
  • タブには、ナビゲーション コントローラーであるルート コントローラーが含まれている必要があります (含まれている必要があります。含まれていないと、詳細を「プッシュ」できません)。
于 2010-10-15T15:39:34.723 に答える
0

UITabBarControllerDelegateタブが切り替えられたときにどのコントローラーに通知するかを設定するプロトコルを参照してから、それを使用して詳細コントローラーをポップします。

ところで、このナビゲーション コントローラーの設定のほとんどは、次のように Interface Builder で行うこともできます。

代替テキスト

于 2010-10-15T16:36:30.987 に答える