一旦用户打开应用,我希望显示UIAlertView
。它会询问他们的电子邮件地址。但我希望它只显示一次。因此,当用户重新打开应用程序时,uialertview不会弹出。 UIAlertView
将包含2个按钮。 '解雇'& '是'..解雇按钮将继续使用该应用。但是,“是”将把他们带到另一种观点'。
谢谢:) 编辑:
- (void)viewDidLoad {
[super viewDidLoad];
if (![@"1" isEqualToString:[[NSUserDefaults standardUserDefaults] objectForKey:@"alert"]]) {
[[NSUserDefaults standardUserDefaults] setValue:@"1" forKey:@"alert"];
[[NSUserDefaults standardUserDefaults] synchronize];
UIAlertView *prompt = [[UIAlertView alloc] initWithTitle:@"Enter your email"
message:@"\n\n\n"
delegate:nil
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Enter", nil];
textField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 50.0, 260.0, 25.0)];
[textField setBackgroundColor:[UIColor whiteColor]];
[textField setPlaceholder:@"enter email here"];
[prompt addSubview:textField];
[prompt show];
[prompt release];
//[textField becomeFirstResponder];
}
}
好的,这是目前的代码,我坚持一旦用户按下回车就会发送电子邮件的方式。
答案 0 :(得分:2)
您可以使用NSUserDefaults
在会话之间保存boolean
。
// save
[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithBool:true] forKey:@"hasRunBefore"];
// load
[[NSUserDefaults standardUserDefaults] objectForKey:@"hasRunBefore"] boolValue];
答案 1 :(得分:1)
您可以将电子邮件地址存储在NSUserDefaults中(我猜你已经这样做了,如果你只是在你的应用程序第一次启动时才会这样做);每次应用程序启动时,您都会检查电子邮件地址是否存在(NSUserDefaults);如果没有,则显示UIAlertView。
答案 2 :(得分:1)
首先,需要让自己成为UIAlertView的委托,这样您就知道用户何时按下了取消或回车。所以这个:
UIAlertView *prompt = [[UIAlertView alloc] initWithTitle:@"Enter your email"
message:@"\n\n\n"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Enter", nil];
委托回调就是这个方法:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
一旦调用,您就可以从您创建的textField实例中检索电子邮件地址并将其添加到警报视图中。