0

現在、タブ バーを追加したい MasterDetail ビュー アプリがあります。タブバーをマスターテーブルビューに正常に追加し、テーブルビューを他のタブに設定しました。これは機能していますが、私の質問は次のとおりです。

別のタブに別の MasterDetail View を配置したい場合、SplitView Controller を Tab Bar Controller に追加しますか? または、テーブル ビュー コントローラーを追加し、マスターにサイズを変更してから、UIView を追加して詳細にサイズを変更し、すべてのデータをセグエ経由でプッシュしますか?

ばかげた質問かもしれませんが、これに関する回答はまだありません。

*編集*

これまでの私の AppDelegate.m の内容は次のとおりです。

#import "AppDelegate.h"
#import "LeftViewController.h"
#import "RightViewController.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UISplitViewController *splitViewController = (UISplitViewController   *)self.window.rootViewController;
    UINavigationController *leftNavController = [(UITabBarController *)splitViewController.viewControllers[0] viewControllers][0];
    LeftViewController *leftViewController = (LeftViewController *)[leftNavController topViewController];
    UINavigationController *rightNavController = [splitViewController.viewControllers objectAtIndex:1];
    RightViewController *rightViewController = (RightViewController *)[rightNavController topViewController];

    Player *selectedPlayer = [[leftViewController players]objectAtIndex:0];
    [rightViewController setPlayer:selectedPlayer];

    leftViewController.delegate = rightViewController;
    return YES;
}

- (void)applicationWillTerminate:(UIApplication *)application
{
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end
4

1 に答える 1

0

アプリUITabBarControllerのルート ビュー コントローラーにする必要があります。次に、各タブ バーを、またはニーズに合ったものviewControllersにすることができます。UISplitViewController

ストーリーボードの写真をお見せしたいのですが、内容が多すぎて何が起こっているのかわかりません!

それが役立つことを願っています。

- アップデート -

必ずしもそれほど簡単ではありませんが、最小限の作業で目的を達成できるはずです。ビュー コントローラーは、アプリをやり直す必要なく移動できます。次の例を見て、それが役立つかどうかを確認してください。基本的に、UITabBarControllerルート ビュー コントローラーとして が必要で、分割ビューを追加できます。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.

    self.tabController = [[UITabBarController alloc] init];

    self.splitView = [[UISplitViewController alloc] init];

    self.tabController.viewControllers = @[self.splitView];

    self.window.rootViewController = tabController;

    return YES;
}

明らかにコードは異なりますが、この基本的な例は正しい方向に進むはずです。

于 2013-07-07T16:21:57.410 に答える