ios UITextField文本框基本使用,以及所有代理方法的作用
/*
UITextField文本输入框
*/
UITextField * textField = [[UITextField alloc]initWithFrame:CGRectMake(50, 50, 275, 50)];
//设置边框形式
/*
UITextBorderStyleRoundedRect 圆角形式
UITextBorderStyleLine 线条形式
UITextBorderStyleBezel 槽形式
*/
textField.borderStyle = UITextBorderStyleRoundedRect;
//通常用于寻找当前文本输入框中显示的文字
textField.text = @"";
//文本颜色
textField.textColor = [UIColor redColor];
//设置文本字体大小
textField.font = [UIFont systemFontOfSize:20];
//设置背景颜色
textField.backgroundColor = [UIColor lightGrayColor];
//当重复开始编辑时候 清除文字
textField.clearsOnBeginEditing = YES;
//文字提示
textField.placeholder = @"请输入您的大区名字";
//文字密文(暗文) 该属性通常用于设置密码输入框
textField.secureTextEntry = NO;
//文字输入时的对齐方式
textField.textAlignment = NSTextAlignmentCenter;
//文字输入的清除按钮
/*
UITextFieldViewModeWhileEditing 当输入时
UITextFieldViewModeAlways 总是
UITextFieldViewModeUnlessEditing 不在输入时候
*/
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
//键盘的类型
textField.keyboardType = UIKeyboardTypeDefault;
//retuan键类型 可自定义键盘
textField.returnKeyType = UIReturnKeyJoin;
//左视图
UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 50, 50)];
label.text = @"账号";
label.textAlignment = NSTextAlignmentCenter;
textField.leftView = label;
textField.leftViewMode = UITextFieldViewModeWhileEditing;
//右视图
UIButton * button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button setTitle:@"确定" forState:UIControlStateNormal];
button.frame = CGRectMake(0, 0, 50, 50);
[button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];
textField.rightView = button;
textField.rightViewMode = UITextFieldViewModeAlways;
[self.window addSubview:textField];
//让键盘产生第一响应 键盘会自动弹起
[textField becomeFirstResponder];
//收起键盘
/*
1、点击键盘的return键
2、点击Button
3、点击空白处弹回键盘
*/
/*
手势
*/
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapClick)];
自定制方法/手势方法
- (void)tapClick{
UITextField * textField = (UITextField*)[self.window viewWithTag:100];
[textField resignFirstResponder];
}
- (void)buttonClick:(UIButton*)button{
//取消第一响应
UITextField * textFiled = (UITextField*)[self.window viewWithTag:100];
[textFiled resignFirstResponder];
}
所有代理方法作用
//当Return键被点击时调用 通常用于收回键盘
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;//5.1前设置NO为点击无效
}
//文本输入框开始输入时调用
- (void)textFieldDidBeginEditing:(UITextField *)textField{
//将键盘弹出
NSLog(@"开始输入");
}
//文本输入框结束输入时调用
- (void)textFieldDidEndEditing:(UITextField *)textField{
//获取当前文本输入框中所输入的文字
NSLog(@"所输入的内容为:%@",textField.text);
//例:判断账号书写形式是否正确 如果不正确提示填写错误 重新输入
NSLog(@"结束输入");
}
//文本输入框内容发生变化即会调用的方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
/*
NSLog(@"内容:%@",textField.text);//获取的是上一次所输入内容
NSLog(@"Location:%lu Length:%lu",range.location,range.length);//范围为当前文字的位置,长度为零
NSLog(@"==%@==",string);//实时获取当前输入的字符
*/
//需求 实时获取当前文本框中的所有文字
NSString * resultStr = [textField.text stringByAppendingString:string];
NSLog(@"%@",resultStr);
//可在该方法中判断所输入文字是否正确
return YES;
}
//了解
//是否允许文本输入框可以输入
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
return YES;
}
//是否允许文本输入框结束
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
//在该方法中可以通过判断文本长度限制键盘是否可以收回
return NO;
}
//是否允许被清除
- (BOOL)textFieldShouldClear:(UITextField *)textField{
NSLog(@"文字被清除");
return YES;
}
ios UITextField文本框基本使用,以及所有代理方法的作用的更多相关文章
- ios文本框基本使用,以及所有代理方法的作用
/* UITextField文本输入框 */ UITextField * textField = [[UITextField alloc]initWithFrame:CGRectMake(50, 50 ...
- (三)在js(jquery)中获得文本框焦点和失去焦点的方法
在js(jquery)中获得文本框焦点和失去焦点的方法 文章介绍两个方法和种是利用javascript onFocus onBlur来判断焦点和失去焦点,加一种是利用jquery $(" ...
- AngularJS进阶(三)HTML:让表单、文本框只读,不可编辑的方法
HTML:让表单.文本框只读,不可编辑的方法 有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使<input type="text" name=" ...
- jQuery监控文本框事件并作相应处理的方法
本文实例讲述了jQuery监控文本框事件并作相应处理的方法.分享给大家供大家参考.具体如下: //事情委托 $(document) .on('input propertychange', '#que ...
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
js中对arry数组的各种操作小结 最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...
- IOS中文本框输入自动隐藏和自动显示
uilabe和UIText扩展方法 +(UILabel*)LabWithFrame:(CGRect)_rect text:(NSString*)aText textColor:(UIColor*)aC ...
- 【我们都爱Paul Hegarty】斯坦福IOS8公开课个人笔记35 UITextField文本框
本话来介绍UIKit框架中的组件UITextField. UItextField(文本框)和Label看起来看像,可是文本框是能够编辑的.在UI中使用文本框要注意.由于在模拟器上面输入文字是能够使用电 ...
- HTML:让表单、文本框只读,不可编辑的方法
有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使<input type="text" name="input1" value=&qu ...
- HTML中让表单input等文本框为只读不可编辑的方法
有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使<input type="text" name="input1" value=&qu ...
随机推荐
- import 导包三种方法
# -*- coding: utf-8 -*- #python 27 #xiaodeng #导包三种方法 #(常用)完整的导入,也是最基本的方法 import re #自己定义别名,一般情况下尽量少用 ...
- Windows客户端的JProfiler远程监控Linux上的Tomcat
1.测试环境 服务器:RedHat Linux 3.4.3-9.EL4(内核版本 2.6.9-5.EL),Tomcat5.5.20,Sun JDK 1.5.0_09,JProfiler 4.3.2 f ...
- 在启动vsftpd,有时会报错
在启动vsftpd,有时会报错:C:>ftp 192.168.0.101Connected to 192.168.0.101.220 (vsFTPd 2.0.5)User (192.168.0. ...
- git版本库管理介绍,撤销git pull操作
Git是分布式版本控制系统,GitHub 是最大的 Git 版本库托管商,是成千上万的开发者和项目能够合作进行的中心. 大部分 Git 版本库都托管在 GitHub,很多开源项目使用 GitHub 实 ...
- 能让你聪明的工作DEAL四法则,来自《每周工作四小时》书籍
来自书籍<每周工作四小时>,作者蒂莫西·费里斯(Tim Ferriss,昵称:蒂姆) 能让你聪明的工作DEAL四法则: 第一步:D——定位(Definition) 第二步:E——精简( ...
- Android快速开发不可或缺的11个工具类(下载)
功能分类:工具 支持平台:Android 运行环境:Eclipse 开发语言:Java 开发工具:Eclipse 源码大小:11.45KB 下载地址:ht ...
- 利用腾讯云免费证书打造全https站
什么是https? 超文本传输安全协议(Hypertext Transfer Protocol Secure,缩写为HTTPS)是一种网络安全传输协议http是HTTP协议运行在TCP之上,所有传输的 ...
- Accelerated C++学习笔记7—<使用库算法>
第6章 使用库算法 本章中主要教我们怎样使用几个库算法来解决与处理字符串和学生成绩相关的问题. 1.分析字符串 使用一个循环来连接两幅字符图案 <span style="font-f ...
- 解决Mac OS X 升级10.10(Yosemite)后ADT(Eclipse)无法找到真机
升级Yosemite之后继续开发Android,发现当编译版本高于设备版本的时候设备选择器找不到真机了,WTF!难道要改低版本SDK开发不成?臣妾做不到啊! 后来捣鼓了一阵,发现解决方案有两个: 1. ...
- Opening Default document on IIS (HTML With WebAPI)
Question: I've a deployed ASP.NET Web API with a website on the same folder that consume it. When I ...