0

ここに画像の説明を入力ストーリーボードにView Controllerを持たないUIViewControllerクラスから、ストーリーボードにView Controllerを持つUIViewControllerに表示を変更したい。このため、絵コンテにセグエはありません...

4

2 に答える 2

0

ちょうどこのような:

AppDelegate.mで、簡単な設定を行います。

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

    ViewController *sourceViewController = [[ViewController alloc] init];
    UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:sourceViewController];
    [self.window setRootViewController:nav];
    return YES;
}

ViewController上記の例では、クラスを独自のクラスに置き換えます。sourceViewCntroller

- (IBAction) didPressMyButton {
    NewViewController* newVC = [[[NewViewController alloc] init] autorelease];
    [self.navigationController pushViewController:newVC animated:YES];
}

このアクションをストーリーボードのボタンに接続するか、任意の方法でビューの変更を埋め込みます。最初にUINavigationコントローラーをセットアップする必要があります。

于 2012-10-18T10:17:49.740 に答える
0

あなたが何をしようとしているのか完全にはわかりませんが、セグエを使用せずにストーリーボードからビューコントローラーをロードする方法を尋ねていると思います。ロードされなかったビューコントローラーのメソッドからストーリーボード。

まず、ストーリーボードで、ロードするビュー コントローラーを選択し、Identity Inspector を開きます。ビュー コントローラーのストーリーボード ID を設定します。をロードしたいように見えるMapViewControllerので、ストーリーボード ID を に設定したとしますmap

コードでは、次のように View Controller をロードできます。

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
MapViewController *mapViewController = [storyboard instantiateViewControllerWithIdentifier:@"map"];

ビュー コントローラーへの参照を取得したら、そのプロパティを設定したり、メッセージを送信したりできます。その後、ナビゲーション コントローラーにプッシュしたり、表示したり、ウィンドウのルート ビュー コントローラーとして設定したりして、任意の方法で表示できます。

于 2012-10-19T06:20:24.490 に答える