ユーザーがアプリを開いたときに、デフォルトに保存されている値を確認したいのですが、値が存在しない場合は、ユーザーに値の入力を求めます。値の保存/読み取りは機能しているようです。
-(void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
NSLog(@"Checking if there is an email address set");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString * emailAddress = [defaults objectForKey:@"emailAddress"];
if (IsEmpty(emailAddress))
{
NSLog(@"email address is blank, prompting user to enter one..");
self.emailPromptAlert = [[UIAlertView alloc] initWithTitle:@"Alert"
message:@"Enter Email address:"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[self.emailPromptAlert setAlertViewStyle:UIAlertViewStylePlainTextInput];
[self.emailPromptAlert setTag:1];
[self.emailPromptAlert show];
}
}
私が抱えている問題は、アプリをクリーンインストールして初めてロードしたときに、アラートが期待どおりに表示されるのにキーボードが表示されないため、ユーザーが実際に何も入力できないことです。
ホームボタンをクリックしてからアプリを再びフォアグラウンドに戻すと、同じアラートが画面に表示されますが、今回はキーボードが実際に表示されています。
キーボードが最初に表示されるようにするにはどうすればよいですか?