0

ストーリーボードをインターフェイスとして使用しており、タブバーコントローラーから始めます。tab1、tab2、accountsettingがあるとしましょう。

ユーザーがアプリの使用を許可される前に、ユーザーは最初に認証する必要があります。私はそれをピンと呼びました。私はすでにこのリンクをたどっています、そして私はピンUIを促すことができます。しかし、私は問題を抱えました。検証が真の場合、このピンUIを非表示にする方法はありません。を使用して検証を行いsqliteます。

PIN UIに移動するには、このコードを使用します。

- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
FirstTimeViewController *firstViewController = [storyboard instantiateViewControllerWithIdentifier:@"PinViewController"];
[firstViewController setModalPresentationStyle:UIModalPresentationFullScreen];
[self presentViewController:firstViewController animated:YES completion:nil];
}

これが写真です:

ここに画像の説明を入力してください

実際には、UIピンを作成してイニシャルにすることができますが、ユーザーはアプリケーションピンでUIピンを無効にすることができます。

アクションボタンをクリックするたびに、検証が成功するとメインメニューにジャンプします。検証が成功した場合、どうすればタブバーに戻ることができますか?何か案が?ありがとう。

ここで編集 するのは私のアプリケーションのPINメニューです。

ここに画像の説明を入力してください

同じクラスを使用できますか?有効/無効にするために、私はすでにそれを処理するクラスを作成しているからです。UIPINと同じクラスを使用します。だから私は新しいファイルを作成するために無駄にする必要はありません。同じクラスを使用している場合、以下のコードを使用してオブジェクトをそのクラスに送信するにはどうすればよいですか?試してもエラーが発生するためです。ありがとう。

    [firstViewController setModalPresentationStyle:UIModalPresentationFullScreen];
[self presentViewController:firstViewController animated:YES completion:nil];
4

1 に答える 1

0

うまくいけばあなたを助けるいくつかのこと。

FirstpresentModalViewControllerは非推奨であり、可能であればpresentViewController:animated:completion:代わりに使用するようにしてください。

あなたの質問から私が理解している限り、あなたはPIN入力画面をモーダルに表示しています。dismissViewControllerAnimated:completion:その場合、PIN が正しいことを確認したら、それを取り除き、呼び出し元の画面に戻るために必要なすべてのことを呼び出します。

これはあなたが求めているものではなく、あなたの質問を誤解している可能性があります。その場合はお知らせください!

編集: OK - 私は今あなたの問題を抱えていると思います。で PIN ビューを表示してviewDidAppearいますが、ユーザーが正しい PIN を既に入力しているかどうか (つまり、ログインしているかどうか) を実際にテストすることはありません。これは、ユーザーがそのビューに移動するたびに、すぐに PIN ビューが表示されることを意味します。

ユーザーがログインしているかどうか (そのセッション中に有効な PIN を入力したかどうか) を確認する条件付きテストを追加する必要があります。そうでない場合は、PIN ビューをモーダルに表示できます。

于 2012-11-05T11:30:51.387 に答える