0

まず、ナビゲーションにストーリーボードを使用しています。ユーザーがログインしているかどうかを確認し、ログインしていない場合は LoginViewController が必要/ビューが表示されます。私は客観的なc/xcodeに非常に慣れていません。解決策を探した後、これが私が思いついたものです。これを自分のプログラムに結び付ける方法がわかりません。これは私のボタンにリンクする必要があるだけですか、それとも私が今していることから完全に外れていますか?

if (self.appDelegate.userHasActiveLogin) {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"ViewController2"];
    [vc setModalPresentationStyle:UIModalPresentationFullScreen];

    [self presentModalViewController:vc animated:YES];}
else {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"LoginController"];
    [vc setModalPresentationStyle:UIModalPresentationFullScreen];

    [self presentModalViewController:vc animated:YES];
}
4

1 に答える 1

1

できることは、ストーリーボードに手動のセグエを作成することです。

メニュー コントローラー (オレンジ色の記号) から子コントローラーに Ctrl キーを押しながらドラッグし、[プッシュ] を選択します。セグエをクリックして、属性インスペクターで識別子を指定します。これで、ユーザーがログインしているかどうかを確認し、条件付き[self performSegueWithIdentifier:@"logged in segue" sender:self];でメニューの VC を呼び出すことができます。

条件は、すべての VC が同じストーリーボードにある必要があるということですが、私はそのように思われます。

于 2013-03-29T20:56:56.587 に答える