我的应用中有一个带有许多标签的视图和带有一些按钮的工具栏。我想按下按钮的同时编辑所有标签。我认为这可能是一种“弹出”文本输入并使键盘同时出现的方法。这是最干净的方法吗? 谢谢
答案 0 :(得分:10)
http://discussions.apple.com/thread.jspa?messageID=8445879
可替换地。我是这样做的:
UIAlertView *prompt = [[UIAlertView alloc] initWithTitle:@"Please enter your name:"
message:@"\n\n"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Enter", nil];
textField = [[UITextField alloc] initWithFrame:CGRectMake(12, 50, 260, 25)];
[textField setBackgroundColor:[UIColor whiteColor]];
[textField setPlaceholder:@"Name for message"];
[prompt addSubview:textField];
[textField release];
// show the dialog box
[prompt show];
[prompt release];
// set cursor and show keyboard
[textField becomeFirstResponder];
然后在UIAlertView委托方法中,您从textField.text中读取内容: - )
答案 1 :(得分:10)
我知道它的答案太迟了,但对于那些使用iOS 5.0或更高版本的人来说,这个答案。 现在,AlertView具有用于各种目的的新Property AlertViewStyle。
UIAlertViewStyle
The presentation style of the alert.
typedef enum {
UIAlertViewStyleDefault = 0,
UIAlertViewStyleSecureTextInput,
UIAlertViewStylePlainTextInput,
UIAlertViewStyleLoginAndPasswordInput
} UIAlertViewStyle;
示例:
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok",nil];
[alertView setAlertViewStyle:UIAlertViewStylePlainTextInput];
[alertView show];
[alertView release];
代表:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
NSLog(@"%@",[[alertView textFieldAtIndex:0] text])
}
答案 2 :(得分:0)
这组代码可能会有助http://d.pr/1Tyt
答案 3 :(得分:0)
使用此Link
这将帮助您轻松地使用textFields发出警报。