自增高的textView

作者: 蒋昉霖 | 来源:发表于2016-08-11 15:45 被阅读438次

    今天找了点Demo,想弄一个自增高的textView,这种需求很常见,比如qq输入框什么的,一开始感觉要根据字数,来算高度,之后设置高度,后来发现了一个比较简单的方法,贴出来给大家分享一下

    废话不多说,直接上代码,基本上如果你也有这种需求,直接复制就行了

    // 1.创建一个tv
    _tv = [[UITextView alloc] initWithFrame:CGRectMake(100, 100, 100, 30)];
        _tv.backgroundColor = [UIColor greenColor];
        _tv.delegate = self; // 遵循代理
        [self.view addSubview:_tv];
    
    // 2.在代理方法里面计算高度
    - (void)textViewDidChange:(UITextView *)textView
    {
    // OK,就下面这两行代码就可以达到你的需求了
        [textView sizeToFit]; // 适配尺寸,
        [self setWidth:100]; // 高度定死.
    }
    
    // 3.设置宽度
    - (void)setWidth:(CGFloat)width
    {
        CGRect frame = self.tv.frame;
        frame.size.width = width;
        self.tv.frame = frame;
    }
    

    那啥,就这么多代码就达到了需求,但是在tableViewController上面有些问题,因为cell改变需要重绘,就导致tv失去第一响应者等问题,还在研究当中...朋友们也可以给点思路...

    贴个比较好用的第三方吧
    YZInputView
    挺好用的,带占位图,自动增高回调

    相关文章

      网友评论

        本文标题:自增高的textView

        本文链接:https://www.haomeiwen.com/subject/ohkssttx.html