Swift - 文本输入框(UITextField)的用法

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

UITextBorderStyle.None:无边框
UITextBorderStyle.Line:直线边框
UITextBorderStyle.RoundedRect:圆角矩形边框
UITextBorderStyle.Bezel:边线+阴影
1
2
3
4
var textField = UITextField(frame: CGRectMake(10,160,200,30))
//设置边框样式为圆角矩形
textField.borderStyle = UITextBorderStyle.RoundedRect
self.view.addSubview(textField)

2,文本框提示文字

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

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

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

4,水平/垂直对齐方式

1
2
3
4
5
6
7
8
9
/** 水平对齐 **/
textField.textAlignment = .Right //水平右对齐
textField.textAlignment = .Center //水平居中对齐
textField.textAlignment = .Left //水平左对齐
 
/** 垂直对齐 **/
textField.contentVerticalAlignment = .Top  //垂直向上对齐
textField.contentVerticalAlignment = .Center  //垂直居中对齐
textField.contentVerticalAlignment = .Bottom  //垂直向下对齐

5,背景图片设置

1
textField.background=UIImage(named:"background1");

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

1
2
3
textField.clearButtonMode=UITextFieldViewMode.WhileEditing  //编辑时出现清除按钮
textField.clearButtonMode=UITextFieldViewMode.UnlessEditing  //编辑时不出现,编辑后才出现清除按钮
textField.clearButtonMode=UITextFieldViewMode.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:显示便于在网页上书写的虚拟键盘

1
textField.keyboardType = UIKeyboardType.NumberPad

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

1
textField.becomeFirstResponder()

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

1
textField.resignfirstresponder()

10,设置键盘return键的样式

1
2
3
4
5
6
textField.returnKeyType = UIReturnKeyType.Done //表示完成输入
textField.returnKeyType = UIReturnKeyType.Go //表示完成输入,同时会跳到另一页
textField.returnKeyType = UIReturnKeyType.Search //表示搜索
textField.returnKeyType = UIReturnKeyType.Join //表示注册用户或添加数据
textField.returnKeyType = UIReturnKeyType.Next //表示继续下一步
textField.returnKeyType = UIReturnKeyType.Send //表示发送

11,键盘return键的响应

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class ViewController: UIViewController,UITextFieldDelegate {
 
    override func viewDidLoad() {
        super.viewDidLoad()
 
        var textField = UITextField(frame: CGRectMake(10,160,200,30))
        //设置边框样式为圆角矩形
        textField.borderStyle = UITextBorderStyle.RoundedRect
        textField.returnKeyType = UIReturnKeyType.Done      
        textField.delegate=self
        self.view.addSubview(textField)
    }
     
    func textFieldShouldReturn(textField:UITextField) -> Bool
    {
        //收起键盘
        textField.resignFirstResponder()
        //打印出文本框中的值
        println(textField.text)
        return true;
    }
}
上一篇:JS里关于事件的常被考察的知识点:事件流、事件广播、原生JS实现事件代理


下一篇:浅尝 Vue 中的 computed 属性 与 watch