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. freemarker遍历java.util.Properties

    java.util.Properties类 学习笔记 http://trans.blog.51cto.com/503170/110227/ FreeMarker代码 <#list systemP ...

  2. Java调用存储过程小结

    学生在学习jdbc的时候,会问到怎么调用存储过程,现在将java调用oracle存储过程的示例总结如下.(关于调用sqlserver的存储过程将在下次进行小结请关注) 一:无返回值的存储过程 存储过程 ...

  3. MySQL和Redis面试题小结

    MySQL专题 1. 主键 超键 候选键 外键 主 键: 数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合.一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null). 超 ...

  4. 防火墙在setup进入不了

    dbus-daemon --system dbus-daemon --system

  5. Altium Designer 小记

    SchDoc文件生成Schlib Design-->Make Schematic Library 查看原理图的的器件在PCB里的对应的方法是:tool— Select PCB Compoment ...

  6. 浅谈 JavaScript 编程语言的编码规范

    对于熟悉 C/C++ 或 Java 语言的工程师来说,JavaScript 显得灵活,简单易懂,对代码的格式的要求也相对松散.很容易学习,并运用到自己的代码中.也正因为这样,JavaScript 的编 ...

  7. 关于Cocos2d-x中MoveTo等动作位置坐标和setPosition的位置坐标的区别

    setPosition设置的坐标使用的是锚点的位置,会根据锚点的改变而有所不同 而MoveTo等动作位置坐标使用的是物体中心的位置,不受锚点的影响

  8. selenium测试(Java)--下载文件(十六)

    下载文件需要在Firefox 的profile属性中配置一些参数,如下面的代码: package com.test.download; import java.io.File; import org. ...

  9. MySQL 常用语法 之 UNION与UNION ALL

    下面讲一下mySql中的union和union all 的功能以及区别 A union B 是将表A的数据和表B的数据连接成一张表,前提是查询的两张表的列数一定要一样否则出错. A union all ...

  10. e554. 在浏览器状态栏中显示信息

    // See also e551 精简的Applet applet.showStatus("Your Message Here"); Related Examples