swift中UITextField使用

原创 Laughing  2017-07-10 00:16  阅读 64 次 评论 0 条

UITextField控件专门用来创建文本输入框,其可以让用户输入文本信息,并且还提供了丰富的代理方法给开发者,以便进行用户交互状态的监听。

实例演示

  1. //  
  2. //  ViewController.swift  
  3. //  SingleView  
  4. //  
  5. //  Created by 李森 on 2017/7/9.  
  6. //  Copyright © 2017年 李森. All rights reserved.  
  7. //  
  8.   
  9. import UIKit  
  10.   
  11. class ViewController: UIViewController,UITextFieldDelegate {  
  12.       
  13.     var textField:UITextField!  
  14.     override func viewDidLoad() {  
  15.         super.viewDidLoad()  
  16.         textField = UITextField(frame: CGRect(x: self.view.bounds.width/2 - 100   , y: self.view.bounds.height/2 - 16, width: 200, height: 32))  
  17.         textField.borderStyle = .roundedRect  
  18.         textField.placeholder = "请输入用户名"  
  19.         textField.textAlignment = .center  
  20.         let imageView1 = UIImageView(image: UIImage(named: "pig"))  
  21.         imageView1.frame = CGRect(origin: CGPoint(x:0,y:0), size: CGSize(width: 32, height: 32))  
  22.         textField.leftView = imageView1  
  23.         textField.leftViewMode = .always  
  24.         textField.delegate = self  
  25.         textField.clearButtonMode = .always  
  26.         self.view.addSubview(textField)  
  27.         // Do any additional setup after loading the view, typically from a nib.  
  28.     }  
  29.       
  30.     //输入框即将进入编辑状态时出发,返回true,编辑框进入编辑状态  
  31.     func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {  
  32.         return true  
  33.     }  
  34.       
  35.     //点击文本框的删除按钮触发,返回true允许删除  
  36.     func textFieldShouldClear(_ textField: UITextField) -> Bool {  
  37.         return true  
  38.     }  
  39.       
  40.     //已经进入编辑状态  
  41.     func textFieldDidBeginEditing(_ textField: UITextField) {  
  42.           
  43.     }  
  44.       
  45.     //输入框即将结束编辑状态调用返回true,结束编辑  
  46.     func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {  
  47.         return true  
  48.     }  
  49.       
  50.     //结束编辑状态,  
  51.     func textFieldDidEndEditing(_ textField: UITextField, reason: UITextFieldDidEndEditingReason) {  
  52.         print(reason)  
  53.     }  
  54.       
  55.     //结束编辑状态  
  56.     func textFieldDidEndEditing(_ textField: UITextField) {  
  57.         textField.resignFirstResponder()  
  58.     }  
  59.       
  60.     //点击键盘return键触发  
  61.     func textFieldShouldReturn(_ textField: UITextField) -> Bool {  
  62.         textField.resignFirstResponder()  
  63.         return true  
  64.     }  
  65.       
  66.     //文本框文字变化出发,返回true允许改变  
  67.     func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {  
  68.         if((textField.text?.characters.count)! >= 11){  
  69.             return false//最多允许输入11个字符  
  70.         }  
  71.         return true  
  72.     }  
  73.       
  74.     @objc func buttonClick() {  
  75.         print("click")  
  76.     }  
  77.   
  78.     override func didReceiveMemoryWarning() {  
  79.         super.didReceiveMemoryWarning()  
  80.         // Dispose of any resources that can be recreated.  
  81.     }  
  82. }  
本文地址:https://www.lisen.me/478.html
版权声明:本文为原创文章,版权归 木子网 所有,欢迎分享本文,转载请保留出处!

发表评论


表情