您的位置:首页 > 产品设计 > UI/UE

给UITextView添加PlaceHolder

2015-09-13 16:26 483 查看
先上图:



上面UITextField的PlaceHolder是自带的,下面的是我的UITextView,实现很简单,textView背景clearColor,后面放个label(希望你知道怎么在Storyboard里面设置哪个View在前面),然后根据textView的delegate调整label是否显示出来。

我主要说几个参数,没按顺序,看完再做

newMenuDescribe.layer.cornerRadius = 5
        newMenuDescribe.layer.borderWidth  = 0.5
        newMenuDescribe.layer.borderColor = UIColor(red: 205/255, green: 205/255, blue: 205/255, alpha: 1).CGColor
        newMenuDescribe.delegate = self
        
        backLabel.textColor = UIColor(red: 205/255, green: 205/255, blue: 205/255, alpha: 1)




textView圆角半径为5,描边宽度为0.5,textView描边和label颜色都是205/255,delegate设置为self

用storyboard的话,先设置label和textView同Top,同Leading,长度自定,然后再改约束,设置成textView的Top下8个单位,Leading后5个单位,UI就是这样

代理方法代码如下:

func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
        
        if text != "" {
            backLabel.hidden = true
        }
        if text == "" && (textView.text as NSString).length == 1 {
            backLabel.hidden = false
        }
        if text == "\n" {
            textView.resignFirstResponder()
            return false;
        }
        return true;
    }




收工
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: