博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swift3 重写一个带占位符的textView
阅读量:5366 次
发布时间:2019-06-15

本文共 1959 字,大约阅读时间需要 6 分钟。

class PlaceStrTextView: UIView,UITextViewDelegate{        var palceStr = "即将输入的信息" //站位文字    var inputStr = "" //输入的信息        //创建一个textView    lazy var textView:UITextView = {        let tv = UITextView()        tv.delegate = self        tv.text = self.palceStr        tv.textColor = UIColor.gray        tv.backgroundColor = UIColor.clear        tv.font = UIFont.systemFont(ofSize: 15)        return tv    }()        //私有方法    func overrideSelf(frame: CGRect) {        self.frame = frame        addTextView()    }        //添加textView    func addTextView(){        self.textView.frame = CGRect(x: 0, y: 0, width: self.frame.width, height: self.frame.height)        self.addSubview(self.textView)    }        func textViewDidBeginEditing(_ textView: UITextView) {        if textView.text == palceStr { //一旦开始编辑就将textView滞空并将颜色改为黑色            textView.text = ""        }        textView.textColor = UIColor.black    }        func textViewDidEndEditing(_ textView: UITextView) {        if textView.text == "" {//如果用户没有输入任何信息就显示站位字符串            textView.text = palceStr            textView.textColor = UIColor.gray        }else{//一旦输入了信息你则颜色变成黑色            textView.textColor = UIColor.black        }    }        func hiddenKeyBoard(){        (UIApplication.shared.delegate as! AppDelegate).window?.endEditing(true)        inputStr = textView.text    }    }

 

//调用示例      @IBOutlet weak var textView: PlaceStrTextView!    override func viewDidLoad() {        super.viewDidLoad()        // Do any additional setup after loading the view.        textView.palceStr = "埃及的妇女节阿萨德来看风景安东尼设计开发"        textView.overrideSelf(frame: textView.frame)    }    override func didReceiveMemoryWarning() {        super.didReceiveMemoryWarning()        // Dispose of any resources that can be recreated.    }    @IBAction func tapAction(_ sender: Any) {        textView.hiddenKeyBoard()        print(textView.inputStr)    }

  

 

转载于:https://www.cnblogs.com/mapanguan/p/6394826.html

你可能感兴趣的文章
解惑:学.Net还是学Java?
查看>>
【课程11】文件的读写
查看>>
一款DIY移动电源的性能
查看>>
函数递归与二分法
查看>>
struts2标签
查看>>
Git最佳实践
查看>>
strlen判断字符串长度要注意的事项
查看>>
javascript高级程序设计--第三章
查看>>
react之路:使用redux-immutable
查看>>
python---网络爬虫01
查看>>
Qt第一个小程序(使用vs2017开发)
查看>>
有用的工具平台收集(不断更新中)
查看>>
弄清java中的字节与字符
查看>>
mongo-查询(3)——关于null
查看>>
算法导论第六章堆排序(一)
查看>>
Android软件开发之发送短信与系统短信库解析
查看>>
Google 发布 Android 性能优化典范
查看>>
软件工程之基于快速原型与面向对象的统一过程的软件系统分析与设计方法
查看>>
Spring -09 -在Spring工程 中加载 properties 文件 -为某个属性添加注解赋初值
查看>>
[游戏模版8] Win32 透明贴图
查看>>