UITextField 是iOS开发中用的非常多的一种控件,主要是供用户输入单行信息的。下面来详细介绍UITextField。
1、常用属性
<span style="font-size:14px;">// 设置和获取文本内容,默认nil
@property(nonatomic,copy) NSString *text;
// 设置文本内容颜色
@property(nonatomic,retain) UIColor *textColor;
// 设置字体
@property(nonatomic,retain) UIFont *font
// 对齐样式
@property(nonatomic) NSTextAlignment textAlignment;
// 设置风格,默认没有风格,需要设置
@property(nonatomic) UITextBorderStyle borderStyle;
// 提示用户输入内容文本
@property(nonatomic,copy) NSString *placeholder;
// 用户编辑时是否clear内容,默认为NO
@property(nonatomic) BOOL clearsOnBeginEditing;
// 自适应调整字体大小,默认为NO
@property(nonatomic) BOOL adjustsFontSizeToFitWidth;
// 设置代理
@property(nonatomic,assign) id<UITextFieldDelegate> delegate;
// 设置背景,需要将textField实例的风格设置为None
@property(nonatomic,retain) UIImage *background;
// 设置textField不可用时的背景图片
@property(nonatomic,retain) UIImage *disabledBackground;
// 设置是否可编辑
@property(nonatomic,readonly,getter=isEditing) BOOL editing;
// 清除按钮的模式,默认不出现
@property(nonatomic) UITextFieldViewMode clearButtonMode;
// 自定义左视图
@property(nonatomic,retain) UIView *leftView;
// 自定义左视图出现的模式
@property(nonatomic) UITextFieldViewMode leftViewMode;
// 不用系统键盘,自定义键盘
@property (readwrite, retain) UIView *inputView;
// 系统键盘和自定义键盘共存
@property (readwrite, retain) UIView *inputAccessoryView;
// 自动大写类型
@property(nonatomic) UITextAutocapitalizationType autocapitalizationType;
// 检查拼写是否正确
@property(nonatomic) UITextAutocorrectionType autocorrectionType;
// 修改键盘类型
@property(nonatomic) UIKeyboardType keyboardType;
// 修改返回类型
@property(nonatomic) UIReturnKeyType returnKeyType;
// 是否安全输入,比如用户输入密码
@property(nonatomic,getter=isSecureTextEntry) BOOL secureTextEntry;</span>
iOS中选中输入框会自动弹出键盘,但是如果需要关闭键盘则需要自己手动控制,一般关闭键盘,要么在点击returnKeyType的时候用代理方法关闭,或者点击真个View的空白区域来关闭。
关闭键盘的方法,点参照我的另一片文章-----IOS隐藏键盘的几种方式
2、常用的代理方法
<span style="font-size:14px;">// 将要开始输入时调用
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
NSLog(@"开始输入");
return YES;
}
// 将要输入结束时调用
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
NSLog(@"输入结束");
return YES;
}
// 清除文字按钮点击事件
- (BOOL)textFieldShouldClear:(UITextField *)textField {
NSLog(@"清除输入内容了");
return YES;
}
// 键盘上的return按钮
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
//隐藏输入键盘
[textField resignFirstResponder];
return YES;
}</span>
创建UITextField,如果用代码创建的话,实例代码如下:
<span style="font-size:14px;">UITextField *textfield = [[UITextField alloc]
initWithFrame:CGRectMake(20, 240, 200, 30)];
// 禁止首字母大写
textfield.autocapitalizationType = UITextAutocapitalizationTypeNone;
// 设置键盘类型
textfield.keyboardType = UIKeyboardTypeNamePhonePad;
// 输入框的边框类型
textfield.borderStyle = UITextBorderStyleRoundedRect;
// 设置委托代理
textfield.delegate = self;
// 键盘上的return按钮类型
textfield.returnKeyType = UIReturnKeyDone;
// 是否安全输入,是的话,输入内容将为星号
textfield.secureTextEntry = NO;
// 清除按钮模式
textfield.clearButtonMode = UITextFieldViewModeAlways;
// 输入框中的文本颜色
textfield.textColor = [UIColor redColor];
// 输入框的字体
textfield.font = [UIFont boldSystemFontOfSize:14];</span>
UITextField 好像用法比较简单,唯一需要注意的就是键盘的隐藏的,其他的特殊功能,可能还没用到吧,以后遇到相关问题再来补充记录。
iOS开发之五:常用控件--UITextField的使用的更多相关文章
-
IOS开发中设置控件内容对齐方式时容易混淆的几个属性
IOS开发中四个容易混淆的属性: 1. textAligment : 文字的水平方向的对齐方式 1> 取值 NSTextAlignmentLeft = 0, // 左对齐 NST ...
-
IOS开发自定义CheckBox控件
IOS本身没有系统的CheckBox组件,但是实际开发中会经常用到,所以专门写了一个CheckBox控件,直接上代码 效果图: UICheckBoxButton.h文件如下: #import #imp ...
-
ios开发中button控件的属性及常见问题
最为最基本的控件,我们必须对button的每个常用属性都熟练应用: 1,使用之前,必须对按钮进行定义,为乐规范,在@interface ViewController (){}中进行定义,先定义后使用. ...
-
iOS 开发 ZFUI framework控件,使布局更简单
来自:http://www.jianshu.com/p/bcf86b170d9c 前言 为什么会写这个?因为在iOS开发中,界面的布局一直没有Android布局有那么多的方法和优势,我个人开发都是纯代 ...
-
iOS开发基础-UITableView控件简单介绍
UITableView 继承自 UIScrollView ,用于实现表格数据展示,支持垂直滚动. UITableView 需要一个数据源来显示数据,并向数据源查询一共有多少行数据以及每一行显示什么 ...
-
iOS开发中UIDatePicker控件的使用方法简介
iOS上的选择时间日期的控件是这样的,左边是时间和日期混合,右边是单纯的日期模式. 您可以选择自己需要的模式,Time, Date,Date and Time , Count Down Timer四 ...
-
【转】IOS中各种常用控件的默认高度,很全
1.状态栏 状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注意,两倍高度的状态栏在好像只能在纵向的模式下使用.如下图 用户可以隐藏状态栏,也可以将状态栏设置为灰色,黑色或者半 ...
-
iOS开发无第三方控件的援助达到的效果侧边栏
最近的研究iOS程序侧边栏.渐渐的发现iOS该方案还开始采取风侧边栏格该,QQ,今日头条,Path(Path运营商最早的侧边栏app该,效果说成是Path效果),所以就研究了下. 然后发现Git Hu ...
-
【Qt开发】常用控件--QSpinBox和QDoubleSpinBox
QSpinBox和QDoubleSpinBox 是UI设计常用的控件. QSpinBox可用于显示和输入整数,并可以在显示框中添加前缀或后缀. QDoubleSpinBox可用于显示和输入小数,并可以 ...
随机推荐
-
iOS emoji表情转码 或者判断
如果项目中有评论或者信息恢复的地方,往往会用到emoji,有时候如后台不支持emoji,就会显示乱码错误,我们可以把emoji转成unicode编码或者utf8编码格式传给服务器.当然如果后台服务器接 ...
-
导入maven项目后无法找到sun tools toos-15.0.jar
直接在缺失该jar包的pom中添加 以下属性和依赖即可! <java.home>D:\devtool\jdk1.6</java.home> <!-- 指定使用的JDK的安 ...
-
UVa 10294 (P&#243;lya计数) Arif in Dhaka (First Love Part 2)
Burnside定理:若一个着色方案s经过置换f后不变,称s为f的不动点,将置换f的不动点的数目记作C(f).等价类的数目等于所有C(f)的平均值. 一个项链,一个手镯,区别在于一个能翻转一个不能,用 ...
-
使用json-lib进行Java和JSON之间的转换【转载】
1. json-lib是一个java类库,提供将Java对象,包括beans, maps, collections, java arrays and XML等转换成JSON,或者反向转换的功能. 2. ...
-
NDMCDB数据库hang住故障分析 - cursor: pin S wait on X
问题描写叙述: 上午刚刚到办公室,就有监控人员邮件反馈,昨晚NDMCDB407数据库被重新启动过,让我分析一下数据库重新启动的原因.因为昨晚业务有版本号上线,所以短信警告关闭了,所以没有短信下发到我手 ...
-
filter的两种使用方法
1. 在模板中使用filter 我们可以直接在{{}}中使用filter,跟在表达式后面用 | 分割,语法如下: {{ expression | filter }} 也可以多个filter连用,上一个 ...
-
Detours修改段属性漏洞
v:* { } o:* { } w:* { } .shape { }p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-botto ...
-
Vim保存时权限不足
保存时权限不足,由于打开时忘记在命令前添加sudo.我们并不需要放弃修改,从新以root权限打开 解决方案 命令模式使用:w !sudo tee %提权,保存
-
Ubuntu 中使用git 上传代码
现在很多人都愿意把自己的代码分享给大家,所以有很多的代码管理的软件 ,比如SVN Git 等软件.今天就讲一下 git 的简单的应用,上传代码.用 git 上传代码 要有个git 账号,这是必不少的 ...
-
APP中的 H5和原生页面如何分辨?
一.APP内嵌H5和原生的区别 1.原生的页面运行速度快,比较流畅.H5页面相对原生的运行性能低,特别是一些动画效果有明显卡顿. 2.H5页面的很多交互都没有原生的好,比如弹层.输入时候的页面滑动 等 ...