iOS学习笔记(5)— UITextField
UITextField详解
一、基本属性
1、创建文本输入框
UITextField*textField=[[UITextField alloc]initWithFrame:CGRectMake(10, 10, 200, 20)];
2、设置边框样式
textField.borderStyle = UITextBorderStyleRoundedRect;//圆角
可选属性:
UITextBorderStyleNone,无边框
UITextBorderStyleLine,有边框
UITextBorderStyleBezel,有边框和阴影
UITextBorderStyleRoundedRect圆角
3、设置背景颜色
textField.backgroundColor = [UIColor blueColor];
4、设置背景图片
textField.background=[UIImage imageNamed:@"test.png"];
5、提示文字
textField.placeholder = @"请输入";
6、设置和读取文字内容
textField.text = @”hello”;
NSString * str = textField.text;
7、设置字体
[textField setFont:[UIFont fontWithName:@"Arial" size:30]];
NSLog(@"%@", [UIFont familyNames]); 查看字体集
8、密文输入
textField.secureTextEntry = YES;
9、键盘类型
textField.keyboardType = UIKeyboardTypeNumberPad; 数字键
UIKeyboardTypeDefault, 当前键盘(默认)
UIKeyboardTypeASCIICapable, 字母输入键
UIKeyboardTypeNumbersAndPunctuation, 数字和符号
UIKeyboardTypeURL, URL键盘
UIKeyboardTypeNumberPad, 数字键盘
UIKeyboardTypePhonePad, 电话号码输入键盘
UIKeyboardTypeEmailAddress, 邮件地址输入键盘
10、键盘风格
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
可选属性
UIKeyboardAppearanceDefault, 默认外观,浅灰色
UIKeyboardAppearanceAlert, 深灰 石墨色
11、设置自定义键盘
UIView *customView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320.300)];
//位置和宽由系统决定。
textField.inputView = customView ;
inputAccessoryView 设置系统键盘或自定义键盘上的视图
12、设置左右视图
UITextField 可以直接设置 leftView 或 rightView, 文本输入区域就在 leftView 和 rightView 之间。
textField.leftView = leftview;
textField.leftViewMode = UITextFieldViewModeAlways;
右视图rightView也是一样,Mode有四种
UITextFieldViewModeNever, 从不出现
UITextFieldViewModeWhileEditing 编辑时显示
UITextFieldViewModeUnlessEditing 不编辑时显示
UITextFieldViewModeAlways 总是显示
13、设置清除按钮显示模式
textField.clearButtonMode = UITextFieldViewModeAlways;
Mode同左右视图的mode一样。
14、再次编辑时是否清空之前内容;默认NO
textField.clearsOnBeginEditing = YES
15、对齐方式
垂直对齐:
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter
可选属性:
UIControlContentVerticalAlignmentCenter 居中对齐
UIControlContentVerticalAlignmentTop 顶部对齐,默认是顶部对齐
UIControlContentVerticalAlignmentBottom 底部对齐
UIControlContentVerticalAlignmentFill 完全填充
水平对齐:
textField.textAlignment = UITextAlignmentCenter;
可选属性:
UITextAlignmentLeft,左对齐,默认是左对齐
UITextAlignmentCenter,
UITextAlignmentRight,右对齐
16、 设置滚动
textField.font = [UIFont systemFontOfSize:30]; 设置文字大小
textField.adjustsFontSizeToFitWidth = YES; 默认是NO YES当充满边框时,文字会缩小,当小到一定程度时仍然会滚动;自适应宽度;
设置滚动时最小字号,与滚动相关,要比设置的字体小,否则没有意义,没有设置这一项文字也会缩小和滚动
textField.minimumFontSize = 20;
17、设置return键
textField.returnKeyType = UIReturnKeyGoogle;search
可选属性
UIReturnKeyDefault, 默认 灰色按钮,标有Return
UIReturnKeyGo, 标有Go的蓝色按钮
UIReturnKeyGoogle,标有Google的蓝色按钮,用语搜索
UIReturnKeyJoin,标有Join的蓝色按钮
UIReturnKeyNext,标有Next的蓝色按钮
UIReturnKeyRoute,标有Route的蓝色按钮
UIReturnKeySearch,标有Search的蓝色按钮
UIReturnKeySend,标有Send的蓝色按钮
UIReturnKeyYahoo,标有Yahoo的蓝色按钮
UIReturnKeyYahoo,标有Yahoo的蓝色按钮
UIReturnKeyEmergencyCall, 紧急呼叫按钮
18、设置输入自动纠正模式
textField.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;
可选属性:
UITextAutocapitalizationTypeNone, 不自动纠正
UITextAutocapitalizationTypeWords, 单词首字母大写
UITextAutocapitalizationTypeSentences, 句子的首字母大写
UITextAutocapitalizationTypeAllCharacters, 所有字母都大写
二、文本编辑框代理
1、是否进入编辑模式
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
默认返回YES,进入编辑模式。NO不进入编辑模式
2、进入编辑模式
- (void)textFieldDidBeginEditing:(UITextField *)textField
3、是否退出编辑模式
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
默认返回YES,退出编辑模式。NO不退出编辑模式
4、退出编辑模式
- (void)textFieldDidEndEditing:(UITextField *)textField
5、点击清除按钮是否清除
- (BOOL)textFieldShouldClear:(UITextField *)textField
默认返回YES,返回NO不清除
6、点击键盘上Return按钮时候调用
- (BOOL)textFieldShouldReturn:(UITextField *)textField
7、当输入任何字符时,代理调用该方法
-(BOOL)textField:(UITextField *)field shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
当输入字符时,代理调用该方法,如果返回YES则这次输入可以成功,如果返回NO,不能输入成功。range表示光标位置,string表示这次输入的字符串。
iOS学习笔记(5)— UITextField的更多相关文章
- 【iOS学习笔记】UITextField中的输入检测——限制只能输入数字和小数点
最近趁着放假时间,在看The Big Nerd Ranch的iOS编程,想着重新复习一遍iOS开发的基础知识 于是从这一篇开始记录一些学习过程中遇到的小问题 书中第四章有一个温度转换的app实现,整体 ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- iOS学习笔记——AutoLayout的约束
iOS学习笔记——AutoLayout约束 之前在开发iOS app时一直以为苹果的布局是绝对布局,在IB中拖拉控件运行或者直接使用代码去调整控件都会发上一些不尽人意的结果,后来发现iOS在引入了Au ...
- IOS学习笔记25—HTTP操作之ASIHTTPRequest
IOS学习笔记25—HTTP操作之ASIHTTPRequest 分类: iOS2012-08-12 10:04 7734人阅读 评论(3) 收藏 举报 iosios5网络wrapper框架新浪微博 A ...
- IOS学习笔记之关键词@dynamic
IOS学习笔记之关键词@dynamic @dynamic这个关键词,通常是用不到的. 它与@synthesize的区别在于: 使用@synthesize编译器会确实的产生getter和setter方法 ...
- iOS学习笔记-精华整理
iOS学习笔记总结整理 一.内存管理情况 1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段 落,开始 ...
- iOS学习笔记10-UIView动画
上次学习了iOS学习笔记09-核心动画CoreAnimation,这次继续学习动画,上次使用的CoreAnimation很多人感觉使用起来很繁琐,有没有更加方便的动画效果实现呢?答案是有的,那就是UI ...
- iOS学习笔记总结整理
来源:http://mobile.51cto.com/iphone-386851_all.htm 学习IOS开发这对于一个初学者来说,是一件非常挠头的事情.其实学习IOS开发无外乎平时的积累与总结.下 ...
- iOS学习笔记之Category
iOS学习笔记之Category 写在前面 Category是类别(也称为类目或范畴),使用Category,程序员可以为任何已有的类添加方法.使用类别可以对框架提供的类(无法获取源码,不能直接修改) ...
- iOS学习笔记之ARC内存管理
iOS学习笔记之ARC内存管理 写在前面 ARC(Automatic Reference Counting),自动引用计数,是iOS中采用的一种内存管理方式. 指针变量与对象所有权 指针变量暗含了对其 ...
随机推荐
- [转载]QQ空间技术架构之深刻揭密
1. 拥有5.5亿的活跃用户 2. 过万台的设备 3. 数千万级别的同时在线 4. 数十亿级别的全站PV 5. P级的UGC存储量 6. 每天千亿级别的服务请求 图1--QQ空间海量服务数据规模 接下 ...
- linux IO调度
I/O 调度算法再各个进程竞争磁盘I/O的时候担当了裁判的角色.他要求请求的次序和时机做最优化的处理,以求得尽可能最好的整体I/O性能.在linux下面列出4种调度算法CFQ (Completely ...
- js获取当前时间&js 页面时钟
js获取当前时间 //获取当前时间,格式YYYY-MM-DD function getNowFormatDate() { var date = new Date(); var seperator1 = ...
- iOS设备的尺寸
iOS设备的尺寸有两种统计单位:像素和点,对于程序员来说,只需要记住点即可. 常见的iOS设备的尺寸(点) 分辨率(点) 设备 分辨率(像素) 320*480 4.4s 320*480(4) 640* ...
- jquery 如何遍历json
var obj = {"status":1,"bkmsg":"\u6210\u529f","bkdata":[" ...
- [cross compile]cygwin和mingw
转自:http://blog.csdn.net/embededvc/article/details/6829010 1. MinGW和CygWin/gcc概念 Unix下编译通过的C代码,在win32 ...
- python中使用xlrd、xlwt操作excel表格详解
python读excel——xlrd 这个过程有几个比较麻烦的问题,比如读取日期.读合并单元格内容.下面先看看基本的操作: 首先读一个excel文件,有两个sheet,测试用第二个sheet,shee ...
- 动画_ _ Android应用开发之所有动画使用详解
转载: http://blog.csdn.net/yanbober/article/details/46481171 题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把 ...
- [ActionScript 3.0] AS3.0 Socket通信实例
以下类是充当Socket服务器的例子 package { import flash.display.Sprite; import flash.events.Event; import flash.ev ...
- 剑指offer习题集1
1.打印二叉树 程序很简单,但是其中犯了一个小错误,死活找不到,写代码要注意啊 这里左右子树,要注意是node->left,结果写成root->left vector<int> ...