[IOS] iphone之UITextField
UITextFiled类,有代理方法。UITextFieldDeleda1. 怎样设置一个文本框[textField]使其不能编辑,就是点击的时候不让虚拟键盘弹出来。
1.代理方法中的一个方法:-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"textFieldShouldBeginEditing"); //测试用
return NO; //这样设置后就成了。这样的话,虚拟键盘就不会弹出来了。
}
2.一个textField,当点击的时候,不弹出虚拟键盘而是弹出一个操作表UIActionSheet类,供其选择。
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
//-只是弹出一个操作表,不弹出虚拟键盘
UIActionSheet *_actionSheet = [[UIActionSheet alloc] initWithTitle:@"电话号码" delegate:self cancelButtonTitle:@"cancel" destructiveButtonTitle:@"电话号码描述" otherButtonTitles:@"12",@"13",nil];
[_actionSheet showInView:self.view];
[_actionSheet release];
return NO; //不能编辑,不能弹出虚拟键盘。
}
随手记笔记,好好学习。待续。
3.我一般用以下的四个代理方法,不管能不能用上,我都写上。
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"textFieldShouldBeginEditing");
return YES;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"textFieldDidBeginEditing");
return;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
NSLog(@"textFieldShouldEndEditing");
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"textFieldDidEndEditing");
return;
}
待续。。。。