UITextView的placeholder猥琐做法

来源:互联网 发布:java类初始化顺序 编辑:程序博客网 时间:2024/05/17 08:34

      在UITextField中自带placeholder属性,可以用于提示输入框信息。但是UITextView并不具备此功能,经过自己的多次

尝试,终于发现了一种猥琐的做法。以下介绍在UITableView中的情况,XIB更简单,就不记录。

        //首先定义UITextView    UITextView *textView = [[UITextView alloc] init];    textView.font = [UIFont systemFontOfSize:14];    textView.frame =CGRectMake(10, 0, cell.contentView.bounds.size.width-20, side);    textView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;    textView.backgroundColor = [UIColor whiteColor];    [cell.contentView addSubview:textView];    textView.hidden = NO;    textView.delegate = self;    //其次在UITextView上面覆盖个UILable,UILable设置为全局变量。    uilabel.frame =CGRectMake(17, 8, cell.contentView.bounds.size.width - side+10, 20);    uilabel.text = @"请填写审批意见...";    uilabel.enabled = NO;//lable必须设置为不可用    uilabel.backgroundColor = [UIColor clearColor];    [cell.contentView addSubview:uilabel];
然后使用UITextView的代理,每当值改变的时候进行判断。

-(void)textViewDidChange:(UITextView *)textView{    self.examineText =  textView.text;    if (textView.text.length == 0) {        uilabel.text = @"请填写审批意见...";    }else{        uilabel.text = @"";    }}

只要这样就可以做一个类似placeholder的功能,是不是有眼前一亮的感觉。

原创粉丝点击