UILabel(标签)与 UITextField(文本框)

1.UILabel(标签)

  • label 的初始化及其属性

          //创建label
          let label = UILabel()
          label.frame = CGRect(x:100,y:120,width:100,height:100)
          self.view.addSubview(label)
          //给label设置文字
          label.text="张三你好"
          //设置文字颜色
          label.textColor=#colorLiteral(red: 0.8078431487, green: 0.02745098062, blue: 0.3333333433, alpha: 1);
          //设置文字字体及大小
          label.font = UIFont.systemFont(ofSize: 18)
          //设置文字对齐方式
          label.textAlignment = .center
          //label的背景颜色
          label.backgroundColor = #colorLiteral(red: 0.2588235438, green: 0.7568627596, blue: 0.9686274529, alpha: 1)
          //文字的换行模式如果是0的话,不限制
          label.numberOfLines = 1
          //如果label大小不足以放下文字,省略模式
          label.lineBreakMode = .byTruncatingTail
    
    

2.UITextField(文本框)

  • label 的初始化及其属性

           //创建textField
          let textField = UITextField()
          //设置textField的大小及位置
          textField.frame=CGRect(x: 100, y: 250, width: 200, height: 40)
          //添加到主视图上
          self.view.addSubview(textField)
          //3、设置密文
          textField.isSecureTextEntry = true;
          //设置placeholder,提示
          textField.placeholder = "请输入密码"
          //边框样式
          textField.borderStyle = .none
          //文字的清除样式n
          textField.clearsOnBeginEditing = true
          //设置背景(边框样式图片) 及图片拉伸
          let inset = UIEdgeInsets(top: 19, left: 30, bottom: 19, right: 18)
          textField.background = UIImage(named:"2.jpg")?.resizableImage(withCapInsets: inset, resizingMode: UIImageResizingMode.stretch)
          //当我们编辑的时候出来编辑按钮
          textField.clearButtonMode = .whileEditing
          //左边视图样式
          textField.leftView = UIImageView(image:UIImage(named:"yaoshi.jpg"))
          //什么时候显示左边视图
          textField.leftViewMode = .always
          //代理方法
          textField.delegate = self;
          self.userTextfield = textField
    
  • textfield的代理方法

    //textFieldDelegate方法
      //是否可以开始编辑
      func textFieldShouldBeginEditing(_ textField:UITextField) -> Bool {
          return true //false不可编辑
      }
      //开始编辑
      func textFieldDidBeginEditing(_ textField: UITextField) {
          print("开始编辑")
      }
      // 结束编辑
      func textFieldDidEndEditing(_ textField: UITextField) {
          print("结束编辑")
      }
      //是不是可以结束编辑
      func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
          return true
      }
      //return 键
      func textFieldShouldReturn(_ textField: UITextField) -> Bool {
          textField .resignFirstResponder()
          return true
      }
      // 是否可以被清除
      func textFieldShouldClear(_ textField: UITextField) -> Bool {
          return true
      }
      override func touchesBegan(_ touches: Set, with event: UIEvent?) {
          //取消第一响应者
       self.userTextfield?.resignFirstResponder()
          
          // 当光标在textfield之上的时候FirstResponder
          // 如果我们想让textfield处于编辑状态,becomeFirstResponder()
          // 当我们想键盘回收的时候
          // resignFirstResponder()
      }
    

3.运行结果

UILabel(标签)与 UITextField(文本框)_第1张图片

你可能感兴趣的:(UILabel(标签)与 UITextField(文本框))