iOS TextView自适应文字高度

本文介绍了如何在iOS中使TextView根据文字内容自适应高度。通过监听TextView的文字变化,计算其适合的尺寸,并限制最大行数,实现TextView高度的动态调整。代码简洁易懂,适用于需要动态输入框高度的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚刚在弄一个填写地址的输入框,输入框的高度随文字变化,想了一下用TextView,看了一下各种开源的代码,觉得好麻烦,自己简单写了一下,还算是好用,下面上代码

- (void)textViewDidChange:(UITextView *)textView{



    CGSize constraintSize = CGSizeMake(_textView.width, MAXFLOAT);

    CGSize size = [_textView sizeThatFits:constraintSize];

    CGFloat currentHeight = size.height;

    CGFloat maxHeight = _textView.font.lineHeight*4;//限制最大行数为4行

    

    if(currentHeight > maxHeight){

        currentHeight = maxHeight;

        _textView.scrollEnabled = YES;

    }else{

        _textView.scrollEnabled = NO;

    }

    _textView.height = currentHeight;

}

原理很简单,就是让textView自适应,然后我们简单的改变高度就可以了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值