UITextView

来源:互联网 发布:淘宝允许卖开刃刀吗 编辑:程序博客网 时间:2024/05/16 23:59

1、创建

       let textView = UITextView.init(frame: CGRect.init(x: 100, y: 100, width: 200, height: 100))

     //滑动条关闭

      textView.showsVerticalScrollIndicator = false
      textView.showsHorizontalScrollIndicator = false

    //边框大小及颜色

      textView.layer.borderWidth = 1
      textView.layer.borderColor = UIColor.orange.cgColor

     //是否允许编辑

      textView.isEditable = false

     // 内容

      textView.text = "dsdasa"

     //选择文字后可以对选择文字加粗等操作

      textView.allowsEditingTextAttributes = true

      //false 文字将不能被选择,防止用户复制我们的文字

      textView.isSelectable = false

      textView.delegate  = self

      self.view.addSubview(textView)

2、设置文字

      textView.dataDetectorTypes = UIDataDetectorTypes.all

      .all   //所有创建链接

      .link // 只创建网址链接

      .phoneNumber  // 只创建电话号码链接

3、代理设置

      func textViewShouldBeginEditing(_ textView: UITextView) -> Bool {
        //编辑开始前被调用 ,如果返回false,编辑将不会开始
        return true
      }
    
      func textViewShouldEndEditing(_ textView: UITextView) -> Bool {
        //编辑结束前被调用,如果返回false,编辑将不会结束
        return true
      }
      func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
        //改变文本前被调用,向range中设置变化范围,text中设置变化的字符串,返回false,变化将不会反应
        return true
      }
    
      func textViewDidBeginEditing(_ textView: UITextView) {
        //编辑结束后被调用,获取焦点是被调动,如执行becomeFirstResponder方法后
      }
      func textViewDidEndEditing(_ textView: UITextView) {
        //编辑结束后被调用,失去焦点时被调用,如执行resignFirstResponde方法后
      }
      func textViewDidChange(_ textView: UITextView) {
          //文本变更时被调用,结果是每输入一个字符时都会被调用
      }
      func textViewDidChangeSelection(_ textView: UITextView) {
        //游标移动,选择范围发生变化时被调用
      }


还有其他的一些这里就不一一写出了



0 0
原创粉丝点击