1

SDK最新のiPhoneアプリケーションを開発していますXCode

ストーリーボードを使用していますが、ユーザーが最初にアプリを実行したときにビューを開く方法がわかりません。

ユーザーがpreferences保存されているかどうかを確認し、保存されていない場合は、設定ビューを開きます。

prefs = [NSUserDefaults standardUserDefaults];

if ([prefs stringForKey:APP_LANGUAGE_KEY] == nil)
{
    // Open SettingsViewController;
}
else
{
    // Continue usually.
}

これは私のストーリーボードです: ここに画像の説明を入力してください

どうすればいいですか?

4

3 に答える 3

4

あなたはほとんどそれを正しくしました。最初の起動時に必ずキーを設定してください。

NSString *key = @"AppWasLaunchedInThePast";
BOOL firstLaunch = ![[NSUserDefaults standardUserDefaults] objectForKey:key];
if (firstLaunch) {
    // First launch. Open settings.
    UIStoryboard *sb = [UIStoryboard storyboardWithName:@"FileName" bundle:nil];
    NSString *anID = @"SettingsViewController"; // or whatever you set in IB.
    SettingsViewController *vc = [sb instantiateViewControllerWithIdentifier:anID];
    // push vc to your navigation controller, or present it modally here.
} else {
    // Not first launch.
}
// Make sure we remember that the app was launched:
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:key];
[[NSUserDefaults standardUserDefaults] synchronize];
于 2012-12-10T15:41:40.370 に答える
3

ビューを開くには、

SettingsViewController *settingsView = [self.storyboard instantiateViewControllerWithIdentifier:@"SettingsViewController"];
于 2012-12-10T15:48:31.587 に答える
0

アプリの初期ビューコントローラーからの最初の起動時にモーダルビューを表示するだけです。

最初の開始チェックを最初のViewControllerのviewDidAppearに配置し、次を呼び出します。

    [self presentModalViewController:vc animated:YES];
于 2012-12-10T19:26:02.777 に答える