首页 > 其他 > 详细

UITextView模拟UITextField 设置Placeholder属性 --董鑫

时间:2015-05-22 18:34:41      阅读:305      评论:0      收藏:0      [点我收藏+]

  由于最近有用到输入框,刚开始考虑的是UITextField,因为它在没有输入的时候可以有提示的Placeholder更能,很人性化,但UITextField只能单行输入,不能跳行,对于一些强迫症的亲来说,很别捏!所以我就想用UITextView,并找出Placeholder的类似方法。我的思路是使用2个UITextView来模拟出UITextField的PlaceHolder效果,一个背景为透明的TextView放在最上面,另一个责作为PlaceHolder的TextView放在最底层。它们之间通过UITextViewDelegate中的-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 方法来动态控制。具体代码如下:

 1 -(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
 2     if(![text isEqualToString:@""])
 3     {
 4         [_backgroundTextView setHidden:YES];
 5     }
 6     if([text isEqualToString:@""]&&range.length==1&&range.location==0){
 7         [_backgroundTextView setHidden:NO];
 8     }
 9     if ([text isEqualToString:@"\n"]) {
10         [textView resignFirstResponder];
11         return NO;
12     }
13     return YES;
14 }

 

UITextView模拟UITextField 设置Placeholder属性 --董鑫

原文:http://www.cnblogs.com/sixindev/p/4522730.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!