1,文本框的创建,有如下几个样式:

public enum UITextBorderStyle : Int {

    case none  无边框

    case line  直线边框

    case bezel 圆角矩形边框

    case roundedRect 边线+阴影
}

let textField = UITextField(frame:CGRect(x:50,y:240,width:self.view.bounds.size.width - 100,height:50))
//设置边框样式为圆角矩形
textField.borderStyle = .roundedRect
self.view.addSubview(textField)

2,文本框提示文字

textField.placeholder="请输入用户名"

3,文字大小超过文本框长度时自动缩小字号,而不是隐藏显示省略号

textField.adjustsFontSizeToFitWidth=true  //当文字超出文本框宽度时,自动调整文字大小
textField.minimumFontSize= //最小可缩小的字号

4,水平/垂直对齐方式

/** 水平对齐 **/
textField.textAlignment = .right //水平右对齐
textField.textAlignment = .center //水平居中对齐
textField.textAlignment = .left //水平左对齐
textField.textAlignment = .justified 

textField.textAlignment = .natural 
/** 垂直对齐 **/
textField.contentVerticalAlignment = .top //垂直向上对齐
textField.contentVerticalAlignment = .center //垂直居中对齐
textField.contentVerticalAlignment = .bottom //垂直向下对齐
textField.contentVerticalAlignment = .fill  //填充满
/*水平对其的属性和垂直对齐是一样的*/

5,背景图片设置

textField.borderStyle = .none //先要去除边框样式
textField.background=UIImage(named:"background1");

6,清除按钮(输入框内右侧小叉

textField.clearButtonMode=.whileEditing  //编辑时出现清除按钮
textField.clearButtonMode=.unlessEditing //编辑时不出现,编辑后才出现清除按钮
textField.clearButtonMode=.always //一直显示清除按钮

7,设置文本框关联的键盘类型

default:系统默认的虚拟键盘
aSCII Capable:显示英文字母的虚拟键盘
numbers and Punctuation:显示数字和标点的虚拟键盘
URL:显示便于输入数字的虚拟键盘
number Pad:显示便于输入数字的虚拟键盘
phone Pad:显示便于拨号呼叫的虚拟键盘
name Phone Pad:显示便于聊天拨号的虚拟键盘
email Address:显示便于输入Email的虚拟键盘
decimal Pad:显示用于输入数字和小数点的虚拟键盘
twitter:显示方便些Twitter的虚拟键盘
web Search:显示便于在网页上书写的虚拟键盘
asciiCapableNumberPad //显示便于输入数字的虚拟键盘 只支持iOS10
textField.keyboardType = .numberPad

8,使文本框在界面打开时就获取焦点,并弹出输入键盘

textField.becomeFirstResponder()

9,使文本框失去焦点,并收回键盘

textField.resignfirstresponder()

10,设置键盘return键的样式

textField.returnKeyType = .done //表示完成输入
textField.returnKeyType = .go //表示完成输入,同时会跳到另一页
textField.returnKeyType = .search //表示搜索
textField.returnKeyType = .join //表示注册用户或添加数据
textField.returnKeyType = .next //表示继续下一步
textField.returnKeyType = .send //表示发送
textField.returnKeyType = .yahoo //雅虎
textField.returnKeyType = .done //显示完成
textField.returnKeyType = .emergencyCall //显示紧急呼叫

11,键盘return键的响应

//设置代理
class FirstyViewController: UIViewController,UITextFieldDelegate

实现代理方法

func textFieldShouldReturn(textField:UITextField) -> Bool
{
//收起键盘
textField.resignFirstResponder()
//打印出文本框中的值
print(textField.text)
return true;
}

12,点击空白处回收键盘

  override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
textField.resignFirstResponder()
}

swift - UITextField 的用法的更多相关文章

  1. Swift—UITextField的基本用法

    https://www.jianshu.com/p/63bdeca39ddf 1.文本输入框的创建##### let textField = UITextField(frame: CGRect(x:1 ...

  2. swift - UIAlertController 的用法

    ios 8 以后苹果官方建议使用UIAlertController这个类,所以专门去网上找资料,了解了下用法, 1.创建一个alertController let alertController = ...

  3. Swift - enumerateObjectsUsingBlock的用法

    enumerateobjectsusingblock:不是Array的方法在NSArray使用.如果你想使用它,你需要一个实例NSArray而不是Array. import Foundation va ...

  4. swift函数的用法,及其嵌套实例

    import Foundation //swift函数的使用 func sayHello(name userName:String ,age:Int)->String{ return " ...

  5. Swift继承的用法

    一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超 ...

  6. swift UITextfield 添加点击方法 - 简单实现

    1. 真正在任何系统上都有效的方法 1./// 城市选择 private lazy var cityTextfield:UITextField = { let tf = UITextField() t ...

  7. swift - UIAlertView 的用法

    1,创建一个alertview,并带有“确定”和“取消”两个按钮 (注:在这里使用alertview,会报警告,那是因为从ios 8 以后,建议使用UIAlertviewController) //警 ...

  8. swift - UISlider 的用法

    swift的UISlider的用法和oc基本没有区别 1.创建 class SecondViewController: UIViewController { var slider = UISlider ...

  9. swift - UISegmentedControl 的用法

    一.创建控件,并监听控件选择值 /*选项除了文字还可以是图片 as关键字的作用就是字面意思:类型转换*/ let items = ["选项一", "选项二", ...

随机推荐

  1. (HttpURLConnection)强制转化

    HTTP的请求详解在我的博客中已经讲解过: http://blog.csdn.net/xiazdong/article/details/7215296 我在http://blog.csdn.net/x ...

  2. [转]一步一步部署SSIS包图解教程

    本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx) ...

  3. 拦截iOS系统导航栏返回按钮事件-三种方法

    方法一:在dealloc里面书写监听事件,因为只有pop才会调用dealloc,push不会掉用 - (void)dealloc {YLLog(@"123"); } 方法二:在- ...

  4. 跨服务器sql操作

    1.打开跨服务器功能 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distrib ...

  5. POST请求中,往URL传递数组

    POST请求中,前端/客户端需要手动拼接URL,然后走接口跟后端交互. 若想传递数组,可以按照如下的拼接形式: &materialsTypeId=11&materialsTypeId= ...

  6. 有关一道printf 的面试题

    今天有个学生面试,面试题目里面有一道有关 printf 的输出问题 源代码如下: #include <stdio.h> int main(void) { int a = 10, b = 2 ...

  7. ubuntu下man帮助文档不全怎么办?如何解决?

    真心后悔用ubuntu学习linux 发现很多东西不全,kate没有,vi版本低,帮助文档不全一系列的问题.ubuntu下man帮助文档不全怎么办?如何解决?不用担心,下边小编就为大家带来最详细的解决 ...

  8. jffs2根文件系统制作

    http://www.eetop.cn/blog/html/98/510998-20964.html 作者:刘洪涛,华清远见嵌入式学院高级讲师,ARM公司授权ATC讲师. JFFS2是Flash上应用 ...

  9. Spark读取文件

    spark默认读取的是hdfs上的文件. 如果读取本地文件,则需要加file:///usr/local/spark/README.md. (测试时候发现,本地文件必须在spark的安装路径内部或者平行 ...

  10. C++ 标准头文件与C头文件区别与联系以及C风格字符串

    1.cstdlib是C++里面的一个常用头文件, 等价于C中的<stdlib.h>. 2.一般一个带“.h” 扩展名的库文件,比如iostream.h.这是延续C语言的,为了兼容C.在新标 ...