带PlaceHolder的UITextView

带PlaceHolder的UITextView_第1张图片
带PlaceHolder的TextView.png
  1. 创建一个UITextView
 txView = [[UITextView alloc] initWithFrame:CGRectMake(12, CGRectGetMaxY(reasonLabel.frame), CGRectGetWidth(reasonLabel.frame), 160)];
    txView.text = @"说说没打开的原因...";
    txView.font = [UIFont systemFontOfSize:17];
    txView.textColor = [UIColor lightGrayColor];
    txView.delegate = self;
    [self addSubview:txView];
  1. 实现将要开始编辑和结束编辑两个代理方法
// 当开始编辑时将文字清空,并改变文字颜色
-(void)textViewDidBeginEditing:(UITextView *)textView
{
    if ([textView.text isEqual:@""]  || [textView.text isEqualToString:@"说说没打开的原因..."])
    {
        txView.text = @"" ;
        txView.textColor = [UIColor blackColor];
    }
}
// 当结束文字输入时,将输入的文字传递出去
-(void)textViewDidEndEditing:(UITextView *)textView
{
    if ([textView.text isEqual:@""])
    { // 没有输入
        txView.text = @"说说没打开的原因...";
        txView.textColor = [UIColor lightGrayColor];
    }
    else 
    {  // 有输入时就将输入内容传递出去
        if (self.delegate && [self.delegate respondsToSelector:@selector(htClockOpenFailCell:editText:)])
        {
            [self.delegate htClockOpenFailCell:self editText:txView.text];
        }
    }
}

你可能感兴趣的:(带PlaceHolder的UITextView)