黑马程序员技术交流社区

标题: 这样实现UITextView的placeholder是不是非常简单啊! [打印本页]

作者: shicuf    时间: 2014-12-20 16:23
标题: 这样实现UITextView的placeholder是不是非常简单啊!

        我们知道在iOS开发时,控件UITextField有个placeholder属性,UITextField和UITextView使用方法基本类似,有两个小区别:1.UITextField单行输入,而UITextView可以多行输入。2.UITextField有placeholder属性,而UITextView没有。至于两者的代理方法,原理基本差不多,只是方法名略有差异。

        如何为UITextView添加一个placeholder功能呢,其实方法很简单,三步即可实现:

        1.在创建textView的时候,赋值其文本属性

        即textView.text = @"想说的话";

        2.在开始编辑的代理方法中进行如下操作


- (void)textViewDidBeginEditing:(UITextView *)textView {

    if ([textView.text isEqualToString:@"想说的话"]) {

        textView.text = @"";

    }

}

        3.在结束编辑的代理方法中进行如下操作

- (void)textViewDidEndEditing:(UITextView *)textView {

    if (textView.text.length<1) {

        textView.text = @"想说的话";

    }

}


        经过上面简单的三步,即可实现placeholder功能,当然你也可以自定义一个UITextView,美化一下,比如添加placeholder的文本颜色等等属性。



作者: yimilei    时间: 2014-12-21 13:18
方法实现确实很简单。赞一个!
作者: wangby    时间: 2015-9-2 16:55
如何想在textview中输入的内容刚好是placeholder的文字(想说的话)这种方法就不行了。
作者: 黑黑黑黑羊    时间: 2017-1-23 14:49
真的很简单啊,很好用。
作者: 黑黑黑黑羊    时间: 2017-1-23 14:51
wangby 发表于 2015-9-2 16:55
如何想在textview中输入的内容刚好是placeholder的文字(想说的话)这种方法就不行了。 ...

是的。那应该怎么处理呢?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2