UI控件之UITextField
UITextField:文本框:用来输入一行文本,父类是UIControl
UITextField *field1=[[UITextField alloc]initWithFrame:CGRectMake(10, 30, 200, 40)];
设置边框样式,如不设置,没有效果
field1.borderStyle=UITextBorderStyleRoundedRect;
field1.backgroundColor=[UIColor yellowColor];
设置文本框里的默认内容
field1.text=@"username:";
设置提示内容(用户编辑时不存在)
field1.placeholder=@"name:";
设置是否是密码框
field1.secureTextEntry=YES;
设置键盘类型(数字键盘、email键盘……)
field1.keyboardType=UIKeyboardTypeNumberPad;
设置键盘的外观样式
field1.keyboardAppearance=UIKeyboardAppearanceDark;
设置键盘上的‘return’键
field1.returnKeyType=UIReturnKeySearch;
设置大写字母的情况(单词:输入每个单词的首字母时自动调整成大写字母样式)
field1.autocapitalizationType=UITextAutocapitalizationTypeWords;
设置输入视图(自定义键盘,只可以设置view的高度)
UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 200, 200)];
imageView.image=[UIImage imageNamed:@"0.png"];
field1.inputView=imageView;
[self.window addSubview:field1];
设置textField左侧的视图
UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 50, 40)];
label.text=@"user:";
field1.leftView=label;
设置左侧视图的显示模式(什么时候显示)
field1.leftViewMode=UITextFieldViewModeAlways;
设置文本框为圆角
UITextField *field2=[[UITextField alloc]initWithFrame:CGRectMake(20, 100, 200, 100)];
field2.borderStyle=UITextBorderStyleRoundedRect;
[self.window addSubview:field2];
设置什么时候显示清空文本
field2.clearButtonMode=UITextFieldViewModeAlways;
field2.text=@"field2";
设置是否在开始编辑时清空原来的内容
field2.clearsOnBeginEditing=YES;
设置文本内容在垂直方向上的对齐方式
field2.contentVerticalAlignment=UIControlContentVerticalAlignmentBottom;
设置文本内容在水平方向上的对齐方式
field2.textAlignment=NSTextAlignmentCenter;
field2.font=[UIFont systemFontOfSize:24];
设置滚动过程中是否自动调整字号(变小)
field2.adjustsFontSizeToFitWidth=YES;
设置字体的最小字号(可能会导致上面的属性不能生效)
field2.minimumFontSize=25;
让textField成为第一响应者
[field2 becomeFirstResponder];
用户编辑结束退出时事件(用户单击'return‘键)
[field2 addTarget:self action:@selector(hideKey:) forControlEvents:UIControlEventEditingDidEndOnExit];
当用户编辑内容时的事件
[field2 addTarget:self action:@selector(changeText:) forControlEvents:UIControlEventEditingChanged];
UITextField的协议方法(遵从UITextFieldDelegate)
设置是否允许用户开始编辑,默认是yes
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
return YES;
}
当用户开始编辑时调用此协议方法
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"begin editing");
}
设置是否允许结束编辑,默认是yes
-(BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
要求用户输入的内容必须大于6个字符,否则不允许结束
if(textField.text.length<6){
return NO;
}else{
return YES;
}
}
当用户结束编辑时调用此协议方法
-(void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"did end editing");
}
设置是否允许清空按钮清空内容,默认是yes
-(BOOL)textFieldShouldClear:(UITextField *)textField
{
return YES;
}
设置是否允许响应用户单击return,默认是yes,可以在此协议方法中实现隐藏键盘,隐藏键盘方法三
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
用Category中的方法将gif动态图片转换为UIImage对象,需要引用自定义地第三方库
UIImage *image=[UIImage animatedImageWithAnimatedGIFURL:[[NSBundle mainBundle]URLForResource:@"FlagZombie" withExtension:@"gif"]];
UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
imageView.image=image;
[self.window addSubview:imageView];
UI控件之UITextField的更多相关文章
- UI控件(UITextField)
@implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UITextField* textField1 = ...
- 【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)
博客地址 : http://blog.csdn.net/shulianghan/article/details/50051499 ; 一. UI 控件简介 1. UI 控件分类 UI 控件分类 : 活 ...
- UI控件(复习一下)
如何修改控件状态• 可见,确实需要经常修改控件状态• 那如何去修改控件的状态呢?方法很简单➢ 每一个UI控件都是一个对象➢ 修改UI控件的状态,其实就是修改控件对象的属性➢ 比如修改UILabel显示 ...
- iOS 中UI控件的各种对齐方式总结
1.textAligment : 文字的水平方向的对齐方式 取值 NSTextAlignmentLeft = 0, // 左对齐 NSTextAlignmentCenter = ...
- ios 中的UI控件学习总结(1)
UIKit框架提供了非常多功能强大又易用的UI控件 下面列举一些在开发中可能用得上的UI控件 UIButton 按钮 UILabel 文本标签 UITextField 文本输入框 UIImageVie ...
- 【IOS 开发】基本 UI 控件详解 (UIDatePicker | UIPickerView | UIStepper | UIWebView | UIToolBar )
转载注明出处 : http://blog.csdn.net/shulianghan/article/details/50348982 一. 日期选择器 (UIDatePicker) UIDatePic ...
- UI控件概述
常见UI控件 UIKit框架提供了非常多功能强大又易用的UI控件,以便于开发者打造出各式各样的App 以下列举一些在开发中常见的UI控件(稍后补上图片示例) 1.UILabel– 文本标签:作用是显示 ...
- Swift UI控件详细介绍(上)
UI控件 首先介绍一下AppDelegate.swift@UIApplicationMain 调用了OC中的UIApplicationMain函数:UIApplicationMain是iOS应用程序的 ...
- iOS基础UI控件介绍-Swift版
iOS基础UI控件总结 iOS基础控件包括以下几类: 1.继承自NSObject:(暂列为控件) UIColor //颜色 UIImage //图像 2.继承自UIView: 只能相应手势UIGest ...
随机推荐
- abp发布需要注意的问题
1>报system.object不存在. 需要从相关目录下面复制System.Runtime.dll eg:C:\Program Files (x86)\Reference Assemblies ...
- shell实现倒计时功能
#!/bin/bash ############################################################## # File Name: oldboyedu.sh ...
- go的sync.Map
sync.Map这个数据结构是线程安全的(基本类型Map结构体在并发读写时会panic严重错误),它填补了Map线程不安全的缺陷,不过最好只在需要的情况下使用.它一般用于并发模型中对同一类map结构体 ...
- java开发目前技术选型
目前系统采用 1.后端 服务框架:Dubbo.zookeeper 缓存:Redis.ehcache 消息中间件:ActiveMQ,kafka 负载均衡:Nginx 分布式文件:FastDFS 数据库连 ...
- A Survey of Shape Feature Extraction Techniques中文翻译
Yang, Mingqiang, Kidiyo Kpalma, and Joseph Ronsin. "A survey of shape feature extraction techni ...
- 使用.NET Reflector 查看Unity引擎里面的DLL文件
转载标注来源哦! 原地址在这里!在这里. 当你查看unity里面API的时候.是不是有时候追踪了一两步就碰到DLL文件走不下去了呢?非常是不爽吧. 这样的问题我也是常常碰到.这是人家商业引擎不想让你看 ...
- js instanceof (2)
instanceof运算符可以用来判断某个构造函数的prototype属性是否存在另外一个要检测对象的原型链上.实例一:普遍用法 A instanceof B :检测B.prototype是否存在于参 ...
- Laravel5.1 路由 -基础
什么是路由? 大K简单的说下,路由是用户访问我们程序的一个入口,比方说 你在浏览器输入:www.myblogs.com/create 就会打开一个页面,我们接收到这一个请求后后台需要做一些事儿来反馈给 ...
- FZU2030(括号匹配)
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=110977#problem/E 题目大意:略 题目思路:数据范围很小,可以搜索, ...
- SharePoint服务器端对象模型 之 使用CAML进行数据查询(Part 2)
(三)使用SPQuery进行列表查询 1.概述 列表查询主要是指在一个指定的列表(或文档库)中按照某些筛选.排序条件进行查询.列表查询主要使用SPQuery对象,以及SPList的GetItems方法 ...