iOS学习(UI)知识点整理

一、关于UITextField的介绍

1)概念: UITextField 是用于接收用户输入的一个控件

2)UITextField  初始化实例代码:

 //创建一个UItextField实例
UITextField *textField = [[UITextField alloc] init];
textField.frame = CGRectMake(, , self.view.frame.size.width - , );
textField.backgroundColor = [UIColor lightGrayColor];
//设置textFiled中的文字
textField.text = @"用户名";
//设置textFiled的字体
textField.font = [UIFont systemFontOfSize:];
//设置textFiled的文字颜色
textField.textColor = [UIColor purpleColor];
[self.view addSubview: textField];

3)textAlignment 设置文本的对齐方式 例如:

  //设置textFiled的文本左对齐
textField.textAlignment = NSTextAlignmentLeft;

4)borderStyle 设置文本框样式  例如:

    //设置textFiled样式为无边框样式
textField.borderStyle = UITextBorderStyleNone;
//borderStyle 有以下几种类型
//1、UITextBorderStyleNone,
//2、UITextBorderStyleLine,
//3、UITextBorderStyleBezel,
//4、UITextBorderStyleRoundedRect

5)layer.cornerRadius 设置文本框圆角 例如:

  textField.layer.cornerRadius = 4.0f;

6)layer.borderWidth 设置文本框边框宽度  例如:

 textField.layer.borderWidth = ;

7)layer.borderColor 设置文本框边框颜色 例如:

  textField.layer.borderColor = [UIColor darkGrayColor].CGColor;

8)background 设置文本框背景图片 例如:

 UIImage *image = [UIImage imageNamed:@"btnEmojBtn"];
textField.background = image;

9)设置文本框默认显示文字(默认灰色字体点击键盘输入时文字消失)例如:

方法一:placeholder

  textField.placeholder = @"用户名";

方法二: NSMutableAttributedString

  NSMutableAttributedString *muAttStr = [[NSMutableAttributedString alloc] initWithString:@"用户名"];
[muAttStr addAttribute:NSForegroundColorAttributeName value:
[UIColor blueColor] range:NSMakeRange(, muAttStr.length)];
textField.attributedPlaceholder = muAttStr;

10)clearButtonMode 设置文本框的清除内容按钮显示模式(即文本框右边的小叉) 例如:

textField.clearButtonMode = UITextFieldViewModeWhileEditing;
typedef enum {
UITextFieldViewModeNever, //从不出现
UITextFieldViewModeWhileEditing, //编辑时出现
UITextFieldViewModeUnlessEditing, //除了编辑外都出现
UITextFieldViewModeAlways //一直出现
} UITextFieldViewMode;

11)leftView 设置文本框的左边视图 例如:

 UIView *leftView = [[UIView alloc] init];
leftView.backgroundColor = [UIColor clearColor];
leftView.frame = CGRectMake(, , , );
textField.leftView = iconImgView;
//设置文本框左边视图的出现方式
textField.leftViewMode = UITextFieldViewModeAlways;

12)returnKeyType 设置文本框呼出的键盘右下角按钮类型 例如:

 textField.returnKeyType = UIReturnKeyDone;

13)userInteractionEnabled 设置文本框是否可编辑  例如:

   //设置文本框不可编辑
textField.userInteractionEnabled=NO;

14)becomeFirstResponder 设置文本框成为第一响应者即呼出键盘 例如:

  [textField becomeFirstResponder];
//注意:当设置一个控件为第一响应者之后,再设置其他为第一响应者无效 第一响应者有且只能有一个

15)resignFirstResponder 设置文本框放弃第一响应者即隐藏键盘 例如:

 [textField resignFirstResponder];

16)secureTextEntry 设置文本框密文模式即密码框 例如:

  textField .secureTextEntry = YES;

17)keyboardType 设置文本框呼出键盘类型 例如:

 //设置数字键盘
textField.keyboardType = UIKeyboardTypeNumberPad; //keyboardType 有:
typedef enum {
UIKeyboardTypeDefault, // 默认键盘,支持所有字符
UIKeyboardTypeASCIICapable, //支持ASCII的默认键盘
UIKeyboardTypeNumbersAndPunctuation, //标准电话键盘,支持+*#字符
UIKeyboardTypeURL, //URL键盘,支持.com按钮 只支持URL字符
UIKeyboardTypeNumberPad, //数字键盘
UIKeyboardTypePhonePad, // 电话键盘
UIKeyboardTypeNamePhonePad, //电话键盘,也支持输入人名
UIKeyboardTypeEmailAddress, //用于输入电子 邮件地址的键盘
UIKeyboardTypeDecimalPad, //数字键盘 有数字和小数点
UIKeyboardTypeTwitter, //优化的键盘,方便输入@、#字符
UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable,
} UIKeyboardType;

18)adjustsFontSizeToFitWidth   设置文本框内容超出文本框范围时文字自动变化大小  例如:

 textField.adjustsFontSizeToFitWidth = YES;
//设置自动缩小显示的最小字体大小
textField.minimumFontSize = ;

19)keyboardAppearance 设置键盘外观 例如:

//深灰 石墨色键盘
textField.keyboardAppearance=UIKeyboardAppearanceAlert;
typedef enum {
UIKeyboardAppearanceDefault, //默认外观,浅灰色
UIKeyboardAppearanceAlert, // 深灰 石墨色
} UIReturnKeyType;

20)文本框 内容对齐方式 例如:

 //内容的垂直对齐方式  UITextField继承自UIControl,此类中有一个属性contentVerticalAlignment
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;

21)font 设置文本框字体样式和大小 例如:

   textField.font = [UIFont fontWithName:@"Arial" size:20.0f];

22)delegate 设置文本框代理对象 例如:

textField.delegate = self;
//文本框设置代理时当前类先必须遵守 UITextFieldDelegate 协议然后实现它的协议方法 //它的协议方法有:
//返回一个BOOL值,是否允许文本框开始编辑
、- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
//开始编辑时触发,文本框将成为第一响应者(first responder )
、- (void)textFieldDidBeginEditing:(UITextField *)textField;
//返回BOOL值,是否允许文本框结束编辑,当编辑结束,当前文本框会放弃第一响应者身份
、- (BOOL)textFieldShouldEndEditing:(UITextField *)textField;
//当文本框结束编辑时触发此方法
、- (void)textFieldDidEndEditing:(UITextField *)textField;
//当文本框内容改变时触发此方法,可在此方法中对文本内容做非法字符筛选或限制输入
、- (BOOL)textField:(UITextField *)textField
shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
//当点击文本框右边清除按钮时触发此方法
、- (BOOL)textFieldShouldClear:(UITextField *)textField;
//当点击键盘右下角按钮Return 按钮时触发此方法
、- (BOOL)textFieldShouldReturn:(UITextField *)textField;

iOS阶段学习第29天笔记(UITextField的介绍)的更多相关文章

  1. iOS阶段学习第28天笔记(UIView的介绍)

    iOS学习(UI)知识点整理 一.关于UIVIew 的介绍 1)概念:UIView 是用于装载并展示各类控件的大容器,是iOS中所有UI控件的基类 2)UIView  初始化实例代码 UIView * ...

  2. iOS阶段学习第27天笔记(UIButton-UIImageView的介绍)

    iOS学习(UI)知识点整理 一.关于UIButton的介绍 1)概念:UIButton 是一种常用的控件,通过点击触发相应的功能 2)UIButton 的几种常用的状态        1.UICon ...

  3. iOS阶段学习第35天笔记(Touch手势介绍)

    一.Touch手势 1.利用手势实现UIButton移动效果  实例代码 1) 创建一个继承自UIButton的类 MyButton.h  代码实现 #import <UIKit/UIKit.h ...

  4. iOS阶段学习第30天笔记( UIViewController—Delegate(代理) )

    iOS学习(UI)知识点整理 一.UIViewController的介绍 1)概念:UIViewController 即视图控制器,用来管理和控制页面跳转的一个类 ,iOS里面采用了MVC的体系结构, ...

  5. iOS 阶段学习第11天笔记(OC基础知识)

    iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import  用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h, ...

  6. iOS 阶段学习第七天笔记(函数、递归)

     iOS学习(C语言)知识点整理笔记 一.函数 1)概念:具有特定功能的代码块的封装 2)函数的定义: 函数类型+函数名(形参列表) 函数类型 函数名(形参类型1  形参名1,形参类型2   形参名2 ...

  7. iOS阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

  8. iOS阶段学习第三天笔记(运算符)

    iOS学习(C语言)知识点整理笔记 1.运算符 一.算术运算符 1)表达式由变量.常量.运算符构成,有确定的类型和值 2)算术运算符包括: +(加),-(减),*(乘),/(除),%(模) 3)算术运 ...

  9. iOS 阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

随机推荐

  1. [MFC] 梳理一个简单的图片处理桌面软件中用到的MFC控件技巧

     前言 前些天应好友之拖,帮忙设计一个简单的图像处理的小软件.朋友把核心算法封装好了,但是是用openCV类似于console的编程环境,要我在此基础上改成MFC桌面程序.下图是做成之后的效果: 我是 ...

  2. html5 postMessage解决跨域、跨窗口消息传递

    一些麻烦事儿 平时做web开发的时候关于消息传递,除了客户端与服务器传值还有几个经常会遇到的问题 1.页面和其打开的新窗口的数据传递 2.多窗口之间消息传递 3.页面与嵌套的iframe消息传递 4. ...

  3. Git Day01,仓库,commit,版本切换

    1st,创建版本库:  2nd,添加文件:  3rd,修改文件,并提交: 4th,版本切换:git log查看版本:版本回退: 又回到原始版本了: 回到“未来”: 今天就到这里,明天继续.Git确实挺 ...

  4. [JavaWeb]关于DBUtils中QueryRunner的一些解读.

    前言:[本文属于原创分享文章, 转载请注明出处, 谢谢.]前面已经有文章说了DBUtils的一些特性, 这里再来详细说下QueryRunner的一些内部实现, 写的有错误的地方还恳请大家指出. Que ...

  5. 实例快速上手 -ASP.NET 4.5新特性WebAPI从入门到精通

    在新出的MVC4中,增加了WebAPI,用于提供REST风格的WebService,新生成的WebAPI项目和典型的MVC项目一样,包含主要的Models.Views.Controllers等文件夹和 ...

  6. javascript中this指向

    在简单函数中,this是指向当前对象,可用来获取当前对象某个属性,但随着函数变复杂,this很多情况不指向当前对象,而是指向window. 1.在独立调用函数中,具有全局执行环境,this指向wind ...

  7. javascript_basic_01之概述

    1.javascript组成: ①核心ECMAScript:②文档对象模型DOM(Document Object Model):③浏览器对象模型BOM(Browser Object Model): 2 ...

  8. jquerymobile仿微信 - 01

    jquerymobile仿微信 - 01 jquerymobile的组件感觉不咋地哇 本地调试最好是开一个web server,不然数据访问会有问题 <div data-role="p ...

  9. 第三节:Vue计算属性

    计算属性就是当其依赖的属性的值发生变化的时候,这个属性的值就会自动更新. 例子: <!DOCTYPE html> <html> <head> <meta ch ...

  10. rabbitMQ第二篇:java简单的实现RabbitMQ

    前言:在这里我将用java来简单的实现rabbitMQ.下面我们带着下面问题来一步步的了解和学习rabbitMQ. 1:如果消费者连接中断,这期间我们应该怎么办 2:如何做到负载均衡 3:如何有效的将 ...