预期行为:用户在里面点击TextField1
,键盘弹出,用户输入一个值,NextButton
被按下,键盘应该被关闭。
异常:按 时键盘消失NextButton
,但随后的警报消失后又弹出!为什么?
另一方面,如果从未调用警报(//[self showDisclaimer]
),则键盘会正确关闭...
我知道它 alertView
已被弃用,但这不是错误的根源,因为如果我使用它,我会得到完全相同的行为UIAlertController
。
有人可以对此有所了解吗?
- (IBAction) NextButton: (id) sender
{
[self backgroundTouch:id]; //Dismisses the keyboard
[self showDisclaimer];
}
- (void) showDisclaimer {
UIAlertView *alertView = [[UIAlertView alloc]
initWithTitle:@"Disclaimer" message: @"bla bla bla"
delegate:self
cancelButtonTitle: nil
otherButtonTitles:@"Don't agree", @"I AGREE", nil];
[alertView show];
}
- (void)alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSString *title = [alertView buttonTitleAtIndex:buttonIndex];
if([title isEqualToString:@"I AGREE"])
{
[self showAlert];
}
else if([title isEqualToString:@"Don't agree"])
{
//Do something else
}
}
- (IBAction) backgroundTouch: (id)sender {
[TextField1 resignFirstResponder];
}