3.UITextField(输入框)知识总结

UITextField 继承于UIControl

UIControl 继承于UIVIew

初始化
UITextField *field = [[UITextField alloc] initWithFrame:CGRectMake(100, 100, 200, 50)];

设置属性 先添加背景颜色
field.backgroundColor = [UIColor yellowColor];

1.添加字

field.text = @”请输入”;
field.textColor = [UIColor redColor];

2.设置字体对齐方式

field.textAlignment = NSTextAlignmentCenter;

3.设置字体大小

field.font = [UIFont systemFontOfSize:20];

4.设置占位字(只有当没有输入的字才会显示)

field.placeholder = @”请输入”;

5.是否允许输入(默认是YES 允许输入)

field.enabled = YES;

6.是否开始输入时清空输入框内容(默认是NO)

field.clearsOnBeginEditing = YES;

7.密文输入(默认 NO) 字是什么颜色 圆圈就是什么颜色

field.secureTextEntry = YES;

8.弹出键盘类型 (有数字类型)

field.keyboardType = UIKeyboardTypeDefault;

9.设置 键盘右下角return 的样式

field.returnKeyType = UIReturnKeyDone;

10.自定义键盘 (默认是键盘 影响他的只有高度)

UIView *inputView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 150)];
inputView.backgroundColor = [UIColor greenColor];
field.inputView = inputView;
[inputView release];

11.键盘辅助视图 (影响他的只有高度)

UIView *inputAccessoryView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 30)];

inputAccessoryView.backgroundColor = [UIColor yellowColor];

field.inputAccessoryView = inputAccessoryView;

[inputAccessoryView release];

12.边框样式

field.borderStyle = UITextBorderStyleRoundedRect;

13.清除按钮何时出现 (默认永不出现)
field.clearButtonMode = UITextFieldViewModeAlways;

14.输入框左视图(影响他的只有宽和高)
UIView *leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 20, 50)];

leftView.backgroundColor = [UIColor greenColor];

field.leftView = leftView;

15.左视图显示模式 (默认不显示)

field.leftViewMode = UITextFieldViewModeWhileEditing;
[leftView release];

16.输入框右视图

UIView *rightView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 20, 50)];

rightView.backgroundColor = [UIColor redColor];
field.rightView = rightView;
[rightView release];

17.右视图显示模式 (默认不显示)
field.rightViewMode = UITextFieldViewModeUnlessEditing;

18.设置代理(方法在那里实现 就把谁设置为代理)
field.delegate = self;

19.显示视图
[self.window addSubview:field];

释放
[field release];

实现键盘回收的方法

UITextField先遵守< UITextFieldDelegate >协议

@interface AppDelegate : UIResponder < UIApplicationDelegate,UITextFieldDelegate >

实现协议中的方法

– (BOOL)textFieldShouldReturn:(UITextField *)textField
{
键盘回收 取消第一相应者

[textField resignFirstResponder];
return NO;
}

设置代理
field.delegate = self;

实现点击return 光标移动到下一个 方法

1.循环创建三个UITextField

for(int i = 0; i < 3; i++) {
UITextField textField = [[UITextField alloc] initWithFrame:CGRectMake(100, 50 + (i 60), 100, 50)];
textField.backgroundColor = [UIColor greenColor];
textField.tag = 100 + i;
textField.delegate = self;
[self.window addSubview:textField];
[textField release];

}

2.实现点击return 光标移动到下一个

UITextField先遵守< UITextFieldDelegate >协议

@interface AppDelegate : UIResponder < UIApplicationDelegate,UITextFieldDelegate >

实现协议中的方法

– (BOOL)textFieldShouldReturn:(UITextField *)textField
{

取出下一个相应者(前提是每个响应者已经依次标记 tag)

UITextField temp = (UITextField )[self.window viewWithTag:textField.tag + 1];

下一个成为第一响应者
[temp becomeFirstResponder];

判断是不是最后一个UITextField(下方tag = 102 最后一个响应者tag标记tag必须是102)

if (textField.tag == 102) {

是最后一个 直接回收键盘

[textField resignFirstResponder];
}

}

设置代理
field.delegate = self;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值