0

たとえば、Storybards が 2 つあります。最初のストーリーボードにはボタン付きのビューがあり、ボタンを押すと 2 番目のストーリーボードが表示されます。

どうやってやるの?

4

3 に答える 3

0

ストーリーボードクラスのドキュメントをご覧ください

を使用してストーリーボードを作成できます

UIStoryBoard *storyboard = [UIStoryboard storyboardWithName:@"secondStoryboard" bundle:nil];

のようにそれからビューコントローラを取得します

UIViewController *initialViewController = [storyboard instantiateInitialViewController];

また

UIViewController *otherViewcontroller = [storyboard instantiateViewControllerWithIdentifier:@"otherController"];

ビューコントローラーを入手したら、ナビゲーションコントローラーにプッシュするだけです。

ただし、同じビュー階層で2つのストーリーボードオブジェクトを使用するとどうなるかわかりません。おそらく問題ありませんが、わかりません:)

于 2012-09-07T14:31:12.790 に答える
0

あなたの質問は少し混乱していますが、私はあなたが何をしようとしているのか知っていると思います.

2 つのストーリーボードを使用します。UIStoryboardには、指定された名前のストーリーボードのインスタンスを取得するメソッドがあります。まず、Xcode でストーリーボードとビュー コントローラーの名前を設定し、それらをロードしてから、任意のビュー コントローラー内から:

UIStoryboard *anotherStoryboard = [UIStoryBoard storyboardWithName:@"SomeStoryboardName" bundle:nil];

その後、任意のストーリーボードから目的の UIViewController をインスタンス化します。

UIViewController *anotherViewController = [anotherStoryboard instantiateViewControllerWithIdentifier:@"SomeViewControllerName"];

次に、それをナビゲーション スタックにプッシュできます。たとえば、次のようになります。

[self.navigationController pushViewController:anotherViewController animated:YES];  
于 2012-09-07T14:32:18.713 に答える
0

汎用に変更されたのは、アプリでこれを行う方法です...

UIStoryboard *alternateStoryboard;

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
    alternateStoryboard = [UIStoryboard storyboardWithName:@"Alternate_iPad" bundle:nil];
} else {
    alternateStoryboard = [UIStoryboard storyboardWithName:@"Alternate_iPhone" bundle:nil];
}

AlternateController *altController = [alternateStoryboard instantiateInitialViewController];
[altController setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self presentModalViewController:altController animated:YES];

あなたのアプリが iPhone または iPad のみの場合は、次のように縮小できます。

UIStoryboard *alternateStoryboard = [UIStoryboard storyboardWithName:@"Alternate" bundle:nil];

AlternateController *altController = [alternateStoryboard instantiateInitialViewController];
[altController setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self presentModalViewController:altController animated:YES];

必要な表示スタイルに合わせて、最後の 2 行を変更することをお勧めします。

于 2012-09-07T14:39:16.587 に答える