UITextField简单的用法

UItextField通常用于外部数据输入,以实现人机交互。

我做了一个简单地例子来做演示:

#import "ViewController.h"

@interface ViewController ()<UITextFieldDelegate>
{//设置全局变量
    UITextField *field;
    UITextField *field1;
}
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    field=[[UITextField alloc]initWithFrame:CGRectMake(20, 40, 200, 30)];//创建文本
    //field.backgroundColor=[UIColor redColor];//设置文本框背景色

field.borderStyle=UITextBorderStyleBezel;//设置边框类型:有UITextBorderStyleNone(无效果),UITextBorderStyleLine(带有直角边框),UITextBorderStyleBezel(带有边框,且有内嵌效果),UITextBorderStyleRoundedRect(圆角边框) //[field setBorderStyle:UITextBorderStyleBezel];//设置边框类型
//field.background=[UIImage imageNamed:@"3.jpg"];//设置背景图片(只有当borderstyle是UITextBorderStyleBezel才会显示) field.placeholder=@"read";//默认显示的文字(未被选中时) //field.clearsOnBeginEditing=YES;//再次编辑时是否清空所有文本信息//注意必须有两个或两个以上才能实现此功能 field.clearButtonMode=UITextFieldViewModeWhileEditing;//在编辑时是否在右侧显示清空内容的按钮
UIView *view=[[UIView alloc]initWithFrame:CGRectMake(20, 40, 200, 100)]; view.backgroundColor=[UIColor redColor]; // field.leftView=view;//设置文本框左侧视图(可以是任何view或view的子类)//还有右视图 // field.leftViewMode=UITextFieldViewModeWhileEditing;//设置左侧视图什么时候显示,默认一直不显示//点击时显示,输入文字时不显示
field.inputView=view;//当文本框在编辑时的弹出视图,类似键盘 field.tag=1; field.delegate=self;//设置代理 [self.view addSubview:field];
field1
=[[UITextField alloc]initWithFrame:CGRectMake(20, 80, 200, 30)]; field1.borderStyle=UITextBorderStyleLine;//设置边框类型 field1.placeholder=@"read"; field.font = [UIFont systemFontOfSize:12];//文字大小 field1.background=[UIImage imageNamed:@"3.jpg"]; field1.secureTextEntry=YES;//密码形式 field1.keyboardType= UIKeyboardTypeDefault;//设置键盘样式 field1.tag=2; field1.returnKeyType=UIReturnKeyDefault;//设置键盘return键样式 field1.delegate=self; [self.view addSubview:field1]; } //代理方法(用的时候需要重新实现) -(void)textFieldDidBeginEditing:(UITextField *)textField{ if (textField==field) { NSLog(@"第一个"); } NSLog(@"****开始编辑%zi",textField.tag); }//文本框开始被编辑 -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ NSLog(@"=====%@",string); return YES; } -(void)textFieldDidEndEditing:(UITextField *)textField{ NSLog(@"--结束编辑"); }//textfield结束编辑

还有以下没有写到的内容:

field.text = @"123";//手动给textfield赋值
NSString *str = field.text;//获取textfield中的文本信息
field.textColor = [UIColor blackColor];//设置文字颜色
field.textAlignment = NSTextAlignmentLeft;//文本对齐方式
field.editing;//textfield是否在编辑,只读权限
[field becomeFirstResponder];//文本框直接是被编辑状态
  [field resignFirstResponder];//文本框失去焦点

//代理方法

-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
    //文本框开始被编辑
    return YES;
}

-(BOOL)textFieldShouldReturn:(UITextField *)textField{
    //键盘return键被点击
    return YES;
}
-(BOOL)textFieldShouldEndEditing:(UITextField *)textField{

 

posted on 2015-11-11 15:35  沙->仙人掌  阅读(242)  评论(0编辑  收藏  举报