【发布时间】:2012-07-19 14:50:45
【问题描述】:
当用户打开我的应用程序时,我想检查存储在默认值中的值,如果不存在,则提示用户输入一个值。值的存储/读取似乎正在工作。
-(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];
}
}
我遇到的问题是,当我对我的应用程序进行全新安装并首次加载时,警报会按预期显示,但没有显示键盘,因此用户实际上无法输入任何内容。
单击主页按钮,然后再次将应用程序带回前台,屏幕上显示相同的警报,但这次实际显示的是键盘。
我能做些什么来确保键盘第一次显示出来?
【问题讨论】:
-
你能让文本字段成为第一响应者吗?
-
@l3v 我试过了,我认为这可能是
viewWillAppear中的问题 -
可能是,我刚刚在
viewWillAppear中尝试了一个警报视图,并且第一次弹出了键盘。
标签: ios ios5 uialertview