2011-07-13 13 views
0

私は、ユーザーが通常のナビゲーション階層のビューに進む前にユーザー名/パスワードを入力できる画面から開始するナビゲーションベースのアプリケーションを作っています。私はこれを行う最善の方法について考えようとしています。ログイン画面用の新しいviewControllerを作成してそれから始め、次にpresentModalViewControllerを使用してナビゲーション階層のRootViewControllerに移動する必要がありますか?または、RootViewController(tableViewController)から始め、画面にログインビューをすぐにプッシュし、正しいusername/pwコンボを入力するとポップする方が良いでしょうか?また、RootViewControllerとは別のビューでアプリケーションを起動する方法についても興味があります。なぜなら、これは常に最初に表示されるものなのでです。ありがとう!iPhone dev - スタートアップログイン画面のナビゲーションベースのアプリですか?

答えて

0

ユーザーがアプリを一時停止/再開したり、電話をロック/ロック解除すると、再びログインするようになりますか?もしそうなら、2番目のオプションを選択し、LoginViewをNavigationViewの上に押します。それ以外の場合は、LoginViewからNavigationViewに置き換えても問題ありません。

0

ApplicationDelegateクラスは、アプリケーションのルートコントローラとして使用するコントローラを指定します。この例では

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    self.window.rootViewController = self.navigationController; 
    ... 
} 

アプリケーションが起動(例えば、すべてのリソースがロードされ、遷移がスプラッシュ画像から作られる)を完了した後、UINavigationControllerのインスタンスは、ルート・ビュー・コントローラとして設定されています。

異なるコントローラをアプリケーションのルートとして使用する場合は、これを実行します。

デザインに関する質問に答えるには、目的のワークフローによって異なります。あなたが説明した内容に基づいて、私はログインビュー/コントローラをロードするベアボーンビューコントローラから始めます。ユーザを認証すると、このView Controllerはメインアプリケーションビューに切り替えることができます。このような設計では、いつでもユーザーを再認証する必要がある場合は、簡単にLoginViewControllerに戻すことができます。

ApplicationViewController(ルート)
- LoginViewController
- MainViewController(これはUINavigationControllerことができたり、あなたがそれをする必要が何でも)

希望に役立ちます!

+0

ありがとうございます!私はまだナビゲーションベースのアプリテンプレートについては一般的には混乱しています。 UINavigationControllerを提供していませんか? RootViewControllerはUITableViewControllerなので、ナビゲーションコントローラとしては何を使用しますか? (私は実際にプッシュをしていますか?)私は自分のnavigationControllerを作らなければなりませんか?私はどこでそれを作るべきですか?私は非常に混乱しています。助けてくれてありがとう – Tim

関連する問題