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 ...
随机推荐
- Windows下免费软件的首选推荐
PS:以下按装机顺序排列,“|”号后面是备选软件. 启动引导:EasyBCD 虚拟机:VirtualBox Linux:Zorin | Linux Mint(Mate) | Ubuntu 驱动工具:驱 ...
- Extjs中获取getEl获取undefined的问题
一定注意: getEl()方法只有在panel.show()之后才会有值.在hide()的时候没有该对象. 也就是说如果要操作Ext.dom.Element对象必须让对象先显示出来.
- Centos 7 启动错误:XFS_WANT_CORRUPTED_GOTO 修复
参考源 如果出现以下报错 [sda] Assuming drive cache: write through Internal error xfs XFS_WANT_CORRUPTED_GOTO at ...
- 带宽的单位为什么是Hz而不是bps?
如果从电子电路角度出发,带宽(Bandwidth)本意指的是电子电路中存在一个固有通频带,这个概念或许比较抽象,我们有必要作进一步解释.大家都知道,各类复杂的电子电路无一例外都存在电感.电容或相当功能 ...
- gstreamer 10.5版本发布啦
- 根据分辨率改变宽度 demo
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 结果集(ResultSet)用法
结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等. 结果集读取数据 ...
- [AC自己主动机+状压dp] hdu 2825 Wireless Password
题意: 给n.m,k ,再给出m个单词 问长度为n的字符串.至少在m个单词中含有k个的组成方案有多少种. 思路: 因为m最大是10,所以能够採取状压的思想 首先建立trie图,在每一个单词的结束节点标 ...
- 浅谈javascript的this指向
This的指向大致能够分为下面四类.我们分别举例说明 1. 作为对象的方法调用时.this指向该对象 var obj={ a:1, getA:function(){ co ...
- 大量数据导入导致mysql自动重启
昨天晚上第十款做数据库迁移,数据库版本:Version: '5.1.61',数据量27G左右 message报错信息如下: Mar :: VM_163_210_tlinux kernel: [, oo ...