1

アプリを iPhone のみから Universal にアップグレードしようとしています。マスター ビューを非表示にして、アプリの重要な部分の詳細 (横向き) のみを表示できるという重要な要件があります。

すべての道路は MGSplitViewController を指します。

ただし、最初に公開されて以来、多くの更新はありません。ARCでコンパイルするのは簡単でした。ただし、このコードの Xib から Storyboard に移行する方法を理解しようと、ほとんどの時間を費やしてきました。

私は iOS の初心者であり、私の経験は iOS 6 と XCode 4.x のみです。私のアプリは iOS 6 のみです。

MGSplitViewController を最新の iOS & XCode に正常に移植した人はいますか?

私がそれを機能させることができれば、これに遭遇した他の人のためにMGSplitViewControllerを再公開したいと思っています.

これまでのところ、「初期ビュー コントローラー」として UIViewController (MGSplitViewController にサブクラス化) を使用してストーリーボードを作成しました。ナビゲーション コントローラー - (RootViewController にサブクラス化された) 別の UIViewController (DetailViewController にサブクラス化された) として支払われるテーブル ビュー コントローラー (ツールバー、バー ボタンなど)。

これら 3 つの間にセグエはありません。アプリのデリゲート コードは次のようになります。

@synthesize window, splitViewController, detailViewController, rootNavigationController;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Remove the status bar
    [[UIApplication sharedApplication] setStatusBarHidden:YES];

    // Override point for customization after application launch.
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];

        splitViewController = (MGSplitViewController *) self.window.rootViewController;

        rootNavigationController = [storyboard instantiateViewControllerWithIdentifier:@"masterNavigationController"];
        detailViewController = [storyboard instantiateViewControllerWithIdentifier:@"detailViewController"];

        detailViewController.splitController = splitViewController;
        splitViewController.masterViewController = rootNavigationController.topViewController;
        splitViewController.detailViewController = detailViewController;
        splitViewController.delegate = detailViewController;

        [rootNavigationController.topViewController performSelector:@selector(selectFirstRow) withObject:nil afterDelay:0];
        [detailViewController performSelector:@selector(configureView) withObject:nil afterDelay:0];

        if (NO) { // whether to allow dragging the divider to move the split.
            splitViewController.splitWidth = 15.0; // make it wide enough to actually drag!
           splitViewController.allowsDraggingDivider = YES;
        }
    }
return YES;
}

私はここで正しい軌道に乗っていますか?

4

1 に答える 1

1

結局、私はこれを必要としなくなったので、iOS 6 への移植は完了しませんでした。しかし、私ができる限りの努力をしている他の誰かを救うために、私の Web サイトへのリンクを投稿しています。私の努力をダウンロードして、作業を続けてください。

これが私の移植の努力です。自己責任で使用してください。

于 2013-06-07T19:39:00.710 に答える