UIAlertView

In a recent discussion with the UI designers for an upcoming iPhone application, I was asked if it’s possible to create an Alert that would overlay the splash screen, prompting for a username and password.

My original response (based on searching the documentation) was a regrettable, no. However, after some digging I did come upon an undocumented method inside the UIAlertView: addTextFieldWithValue. What follows is a screenshot of how you might use this feature:

 

The code for the alert example follows. Notice how you can create a pointer to the UITextFields and modify its attributes, very cool.

In the .h file

UITextField *textfieldName;
UITextField *textfieldPassword;
In the .m file

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
  // Clicked the Submit button
  if (buttonIndex != [alertView cancelButtonIndex])
  {
    NSLog(@"Name: %@", textfieldName.text);
    NSLog(@"Name: %@", textfieldPassword.text);
  }
}

...

- (void) someMethod
{
  UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Please Login" message:@""
        delegate:self cancelButtonTitle:@"Cancel"  otherButtonTitles:@"Submit", nil];

  [alert addTextFieldWithValue:@"" label:@"User Name"];
  [alert addTextFieldWithValue:@"" label:@"Password"];

  // Username
  textfieldName = [alert textFieldAtIndex:0];
  textfieldName.keyboardType = UIKeyboardTypeAlphabet;
  textfieldName.keyboardAppearance = UIKeyboardAppearanceAlert;
  textfieldName.autocorrectionType = UITextAutocorrectionTypeNo;

  // Password
  textfieldPassword = [alert textFieldAtIndex:1];
  textfieldPassword.clearButtonMode = UITextFieldViewModeWhileEditing;
  textfieldPassword.keyboardType = UIKeyboardTypeNumbersAndPunctuation;
  textfieldPassword.keyboardAppearance = UIKeyboardAppearanceAlert;
  textfieldPassword.autocorrectionType = UITextAutocorrectionTypeNo;
  textfieldPassword.secureTextEntry = YES;

  [alert show];
}
*Update: This morning I was running an application that my friend Rodney Aiglstorfer wrote, mJaiku (mJaiku on the App Store), I noticed Rodney is using this idea when the application prompts the user to add a new location (see below). Guess I should of inquired with Rodney before I spent time researching this :)

 

BTW, if you are a Jaiku user, mJaiku for the iPhone is a must have!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值