UIAlertView 解读
直接看代码:
IOS5新增:
typedef enum {
UIAlertViewStyleDefault = 0,
UIAlertViewStyleSecureTextInput,
UIAlertViewStylePlainTextInput,
UIAlertViewStyleLoginAndPasswordInput
} UIAlertViewStyle;
- (IBAction)click3:(id)sender {
UIAlertView *message = [[UIAlertView
alloc]
initWithTitle:@"UIAlertViewStyleLoginAndPasswordInput" message:nil
delegate:self
cancelButtonTitle:@"Cancel" otherButtonTitles:@"Continue",
nil];
[message
setAlertViewStyle:UIAlertViewStyleLoginAndPasswordInput];
UITextField *loginFieldText =
[message textFieldAtIndex:0];
//系统最多允许2个输入框,获取输入框按序号0、1来获取
loginFieldText.placeholder = @"请输入用户名";
//[message setNumberOfRows:2];
//实际上可以这样设置,指示SDK在5中还没暴露出来,设置之后每个按钮就是纵向排列的了
[message show];
}
#pragma UIAlertView Delegate
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (UIAlertViewStyleLoginAndPasswordInput ==
alertView.alertViewStyle) {
UITextField *nameTextField = [alertView textFieldAtIndex:0];
UITextField *pwdTextField = [alertView textFieldAtIndex:1];
NSLog(@"name = %@, pwd = %@,
buttonIndex =
%d",nameTextField.text,pwdTextField.text,buttonIndex);
}else if
(UIAlertViewStylePlainTextInput == alertView.alertViewStyle)
{
UITextField *plainTextField = [alertView
textFieldAtIndex:0];
NSLog(@"plainTextField.text = %@, buttonIndex = %d",plainTextField.text,buttonIndex);
}else if
(UIAlertViewStyleSecureTextInput == alertView.alertViewStyle)
{
UITextField
*secureTextField = [alertView textFieldAtIndex:0];
NSLog(@"secureTextField.text = %@, buttonIndex =
%d",secureTextField.text,buttonIndex);
}else {
NSLog(@"buttonIndex = %d",buttonIndex);
}
}
//这个很少用到目前起码
- (void)alertViewCancel:(UIAlertView *)alertView { NSLog(@"alertViewCancel"); }
//将要显示alertView时调用
- (void)willPresentAlertView:(UIAlertView
*)alertView{ NSLog(@"willPresentAlertView"); }
//已经显示alertView时调用
- (void)didPresentAlertView:(UIAlertView
*)alertView { NSLog(@"didPresentAlertView"); }
//将要隐藏alertView时调用
- (void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex
{
NSLog(@"willDismissWithButtonIndex"); }
//已经隐藏alertView时调用
- (void)alertView:(UIAlertView *)alertView
didDismissWithButtonIndex:(NSInteger)buttonIndex {
NSLog(@"didDismissWithButtonIndex"); }
//每次编辑输入框时会调用
// Called after edits in any of the default
fields added by the style -
(BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView
*)alertView { return YES; }
IOS5新增:
} UIAlertViewStyle;
- (IBAction)click3:(id)sender {
#pragma UIAlertView Delegate
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
NSLog(@"plainTextField.text = %@, buttonIndex = %d",plainTextField.text,buttonIndex);
}
//这个很少用到目前起码
- (void)alertViewCancel:(UIAlertView *)alertView { NSLog(@"alertViewCancel"); }
//将要显示alertView时调用
//已经显示alertView时调用
//将要隐藏alertView时调用
- (void)alertView:(UIAlertView *)alertView willDismissWithButtonInd
//已经隐藏alertView时调用
//每次编辑输入框时会调用
网络上志同道合,我们一起学习网络安全,一起进步,QQ群:694839022