A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

        我们知道在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的文本颜色等等属性。


评分

参与人数 1黑马币 +20 收起 理由
yimilei + 20 赞一个!

查看全部评分

4 个回复

倒序浏览
方法实现确实很简单。赞一个!
回复 使用道具 举报
如何想在textview中输入的内容刚好是placeholder的文字(想说的话)这种方法就不行了。
回复 使用道具 举报 1 0
真的很简单啊,很好用。
回复 使用道具 举报
wangby 发表于 2015-9-2 16:55
如何想在textview中输入的内容刚好是placeholder的文字(想说的话)这种方法就不行了。 ...

是的。那应该怎么处理呢?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马