Cyb*_*erK 14 iphone xcode ios ios5
我正在使用UIAlertView的新iOS 5功能之一.我像这样创建一个UIAlertView:
UIAlertView *scanCode = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Some Title", @"") message:nil delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:NSLocalizedString(@"OK", @""), nil];
[scanCode setAlertViewStyle:UIAlertViewStylePlainTextInput];
scanCode.tag = 1234;
[scanCode show];
[scanCode release];
Run Code Online (Sandbox Code Playgroud)
我现在使用的代表是:
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (alertView.tag == 1234) {
if (buttonIndex == 1)
{
//do something
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想模拟回车键,所以当用户按下键盘返回时,按下警报的OK按钮就会发生同样的事情.我怎样才能做到这一点?
提前致谢!
jac*_*ash 29
确保您的类符合<UITextFieldDelegate>协议,UIAlertView为您的类创建属性并将以下行添加到您的设置代码中...
self.scanCode = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Some Title", @"") message:nil delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:NSLocalizedString(@"OK", @""), nil];
[self.scanCode setAlertViewStyle:UIAlertViewStylePlainTextInput];
self.scanCode.tag = 1234;
//add this...
[[self.scanCode textFieldAtIndex:0] setDelegate:self];
[self.scanCode show];
Run Code Online (Sandbox Code Playgroud)
通过成为输入文本字段的委托,您可以找到按下键盘上的返回键的时间.然后在您的类的.m文件中,您实现下面的委托方法并告诉警报消失:
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
[self.scanCode dismissWithClickedButtonIndex:self.scanCode.firstOtherButtonIndex animated:YES];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8649 次 |
| 最近记录: |