iOS UITextFieldDelegate协议

很多人都认为UITextField很简单,为什么会写这个协议呢?

开发中可能会用到;

比如:

文本框下面的下划线的颜色要随着输入的状态变化;

所以,要熟悉UITextFieldDelegate协议

首先,先看一下官方的说明:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;        // return NO to disallow editing.
- (void)textFieldDidBeginEditing:(UITextField *)textField;           // became first responder
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField;          // return YES to allow editing to stop and to resign first responder status. NO to disallow the editing session to end
- (void)textFieldDidEndEditing:(UITextField *)textField;             // may be called if forced even if shouldEndEditing returns NO (e.g. view removed from window) or endEditing:YES called

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;   // return NO to not change text

- (BOOL)textFieldShouldClear:(UITextField *)textField;               // called when clear button pressed. return NO to ignore (no notifications)
- (BOOL)textFieldShouldReturn:(UITextField *)textField;              // called when ‘return‘ key pressed. return NO to ignore.

1、

- (void)textFieldDidBeginEditing:(UITextField *)textField;

文本框已经开始编辑

2、

- (void)textFieldDidEndEditing:(UITextField *)textField; 

文本框已经结束编辑

3、其他设置是否允许的输入控制

1、- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;        // return NO to disallow editing.   //控制是否允许输入

2、- (BOOL)textFieldShouldEndEditing:(UITextField *)textField;          // return YES to allow editing to stop and to resign first responder status. NO to disallow the editing session to end
   //是否结束输入

3、- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;   // return NO to not change text    //是否改变输入文本4、- (BOOL)textFieldShouldClear:(UITextField *)textField;               // called when clear button pressed. return NO to ignore (no notifications)   //当清空按钮时候调用,返回是NO的时候,忽视清空
5、- (BOOL)textFieldShouldReturn:(UITextField *)textField;              // called when ‘return‘ key pressed. return NO to ignore.
   //当点击return按钮时候调用,返回是NO的时候,不做任何响应
				
时间: 2024-11-13 14:44:50

iOS UITextFieldDelegate协议的相关文章

IOS 键盘协议之中的一个 <UITextFieldDelegate>

1. 设置键盘的第一响应者后,便可通过点击TextField唤出键盘 设置键盘第一响应者方法为: [textField becomeFirstResponder];//此时,textField 输入框则为当前键盘的第一响应者,故仅仅要 textField失去第一响应者,键盘才会消失 设置键盘失去第一响应者的方法为: [textField resignFirstResponder];//一般在设置点击button的对应事件内,或写在UIView的点击触发事件内(此时点击屏幕的不论什么地方都可响应)

UITextFieldDelegate协议中各个方法的作用与Xcode中AppDelegate.m中自动生成各个方法的作用(iOS)

UITextFieldDelegate协议中各个方法的作用 控制当前输入框是否能被编辑 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 当输入框开始时触发(获得焦点触发) - (void)textFieldDidBeginEditing:(UITextField *)textField 询问输入框是否可以结束编辑(键盘是否可以收回) - (BOOL)textFieldShouldEndEditing:(UITextFiel

iOS xmpp协议实现聊天之openfire的服务端配置(一)

今天弄这个openfire服务端的配置直接苦了一逼,不过好在最后终于配置好了.首先感谢@月光的尽头的博客给了我莫大的帮助.切入正题,首先说一下iOS xmpp协议实现聊天openfire服务器配置所需要的东西: 1.openfire软件,我用的是 Openfire 3.9.3,下载地址:http://www.igniterealtime.org/downloads/index.jsp 2.MySql数据库,我用的是mysql-5.1.63,下载地址:http://dev.mysql.com/do

iOS xmpp协议实现聊天之openfire的服务端配置(二)

本篇主要说一下如何利用命令行来正确配置MySql. 首先打开终端: 1.为mysql起一个别名 alias mysql=/usr/local/mysql/bin/mysql 2.创建mysql的管理员  admin(后期登陆用到) alias mysqladmin=/usr/local/mysql/bin/mysqladmin 3.设置root账号密码 mysqladmin -u root password 初始密码 4.连接数据库 mysql -u root -p  (提示输入刚才的密码) 5

UITextFieldDelegate协议

很多人都认为UITextField很简单,为什么会写这个协议呢? 因为在实际开发中可能会用到: 比如要做到下图的效果: 文本框下面的下划线的颜色要随着输入的状态变化: 点击对应的文本框,其下面的线条变为绿色,结束编辑,变为灰色: 要熟悉UITextFieldDelegate协议才能做到这一点: 首先,先看一下官方的说明: - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField; // return NO to disallow e

调用Live555接收RTSP直播流,转换为Http Live Streaming(iOS直播)协议

Live555接收RTSP直播流,转换Http Live Streaming(iOS直播)协议 RTSP协议也是广泛使用的直播/点播流媒体协议,之前实现过一个通过live555接收RTSP协议,然后转换为HLS(Http Live Streaming)直播协议文件的程序,为的是可以接收远端设备或服务器的多路RTSP直播数据,实时转换为HLS协议文件,以实现iPhone或iPad等设备观看RTSP直播源的需求.现在把实现的思路分享如下. 要点分析 首先,程序的主要目的,是从多路RTSP输入源中提取

IOS面向协议的MVVM架构介绍(来着网络的链接)

https://academy.realm.io/cn/posts/doios-natasha-murashev-protocol-oriented-mvvm/   面向协议的 MVVM 架构介绍 http://www.cocoachina.com/ios/20160108/14911.html    猿题库 iOS 客户端架构设计

iOS网络协议----HTTP/TCP/IP浅析

一.TCP/IP协议 话说两台电脑要通讯就必须遵守共同的规则,就好比两个人要沟通就必须使用共同的语言一样.一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通.两台电脑之间进行通讯所共同遵守的规则,就是网络协议. 那么谁来制定这个网络协议? 国际标准化组织(ISO)定义了网络协议的基本框架,被称为OSI模型.要制定通讯规则,内容会很多,比如要考虑A电脑如何找到B电脑,A电脑在发送信息 给B电脑时是否需要B电脑进行反馈,A电脑传送给B电脑的数据的格式又是怎样的?内容太多太杂,

iOS网络协议篇

iOS开发网络篇-HTTP协议 说明:apache tomcat服务器必须占用8080端口 一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) 通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址.位置,互联网上的每个资源都有一个唯一的URL 2.URL中常见的协议 (1)HTTP 超文本传输协议,访问的是远程的网络资源,格式是http:// http协议是在网络开发中最常用的协议 (2)file 访问的是本地计算机上的资源,