UITextView自动高度 - 向上方向

时间:2014-05-06 02:57:19

标签: ios objective-c uitextview

我正在使用此代码制作具有自动调整大小的动态UITextView

- (void)textViewDidChange:(UITextView *)txtView
{
    CGRect frame;
    frame = txtView.frame;
    frame.size.height = [textView contentSize].height;
    textView.frame = frame;
}

代码很好,但是当我按下键盘上的“返回”(断行)时,我需要textView向上移动方向而不是像现在一样向下移动。

我尝试用“CGRectGetMaxY(textView.frame)”做一些事情,因为我知道textView的底部需要保持原样而不是改变,但我找不到正确的方法。

这个textView用于聊天消息的输出,所以如果用户写的东西很长,那么textView需要长大,因为键盘是吼叫的

1 个答案:

答案 0 :(得分:5)

这应该可以解决问题:

- (void)textViewDidChange:(UITextView *)textView
{
    CGRect frame = textView.frame;
    frame.origin.y = CGRectGetMaxY(frame) - [textView contentSize].height;
    frame.size.height = [textView contentSize].height;
    textView.frame = frame;
}