[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;

}


待续。。。。

posted @ 2011-10-12 15:01  松花江以南  阅读(2261)  评论(0编辑  收藏  举报