UITextField中的placehoder效果就是一个文本框的提示内容,可是UITextView是没有这个功能的,因此咱们须要本身模拟,思路以下:java
具体实现:markdown
@interface ContactUsViewController : UIViewController<UITextViewDelegate> @property (weak, nonatomic) IBOutlet UITextView *textView; @property(strong,nonatomic)NSString* placehoder; @end
self.textView.delegate = self; self.textView.text = self.placehoder;
/** * @author Elin * * textView开始输入时调用 * * @param textView 被输入的UITextView */ -(void)textViewDidBeginEditing:(UITextView *)textView{ //若是textView中的字符串为定义的placehoder,表示用户以前没有输入内容,则清楚textView if ([textView.text isEqualToString:self.placehoder]) { self.textView.text = @""; } }
/** * @author Elin * * textView结束输入的时候调用 * * @param textView 被输入的UITextView */ -(void)textViewDidEndEditing:(UITextView *)textView{ //若是textView中的内容长度为0,则表示textView为空,用placehoder填充 if (textView.text.length<1) { self.textView.text = self.placehoder; } }
固然若是为了更加逼真,能够设置改变字体颜色,在此再也不赘述。字体