2

3 つのタブを持つアプリケーションにタブバーを動的に追加しました。これらの 3 つのタブは、特定のビュー コントローラーを開きます。

最初のタブを開く:-情報ページ

2番目のタブを開く: - 一部のリスト ページ

3番目のタブを開く: - 設定ページ

3番目のタブを選択すると、設定ページが表示されます設定ページには、アプリケーションを詳細設定ページに移動するボタンがあります。変更ボタンをクリックすると、詳細設定ページが表示されます。タブのビューコントローラーが変更されます。:-

最初のタブを開く:-情報ページ

2番目のタブを開く:-地図ページ(一部のリストページの代わり)

3番目のタブを開く:-設定ページ**

これが問題です。すでに一度設定されている2番目のタブのviewcontrollerを変更する手がかりがありません。

someviewcontoller.m filelike の viewwillappear() 関数にタブバーを動的に追加しました:-

tabBarController = [[UITabBarController alloc] init];
    [tabBarController setViewControllers:[NSArray arrayWithObjects:nav1,nav2,nav3,nil]];

    [self.navigationController pushViewController:tabBarController animated:YES];

    [nav1 release]; nav1 = nil;
    [nav2 release]; nav2 = nil;
    [nav3 release]; nav3 = nil;
    [tabBarController release]; 
    tabBarController = nil;
4

1 に答える 1

2

これを試して!nav1、nav2、nav3 は、navigationController のオブジェクトです。各ナビゲーション コントローラーを渡すには、ViewController を使用する必要があります。したがって、nav2 の viewController を変更する必要があります。nav2 のビュー コントローラのオブジェクトを、いくつかのリスト ページのビュー コントローラからマップ ページのビュー コントローラのオブジェクトに変更します。

ビューコントローラーのオブジェクトを変更すると、タブボタンが動的に変更されます。それがあなたを助けることを願っています。

ありがとう :)

于 2012-09-13T05:59:41.713 に答える