输入文本的最后一行延伸到 UIScrollView 之外

Posted

技术标签:

【中文标题】输入文本的最后一行延伸到 UIScrollView 之外【英文标题】:last line of input text extends outside of UIScrollView 【发布时间】:2013-09-24 02:10:07 【问题描述】:

我的一个控制器的 UIScrollView 中有一个 UITextView。

问题在于,当您输入文本并到达滚动视图的底部时,最后一行文本(您正在输入的文本)实际上超出了滚动视图的底部并被隐藏了。

任何帮助将不胜感激。

scrollView.frame =  CGRectMake(15.0f, 20.0f+15.0f, self.view.frame.size.width-15.0f*2.0f, self.view.frame.size.height-keyboardBar.frame.size.height-keyboardBounds.size.height-20.0f-15.0f*3.0f);

postTextView.frame = CGRectMake(0.0f, 0.0f, scrollView.frame.size.width, scrollView.frame.size.height);

[self.view addSubview:scrollView];
[scrollView addSubview:postTextView];

`

【问题讨论】:

看起来这可能是 ios 7 特有的。 ***.com/questions/18966675/…我完全删除了滚动视图,因为 UITextView 可以自己滚动,我在 iOS 7 中仍然遇到问题 【参考方案1】:

您需要设置滚动视图的内容大小,以便它知道如何滚动其子视图:

[scrollView setContentSize:postTextView.frame.size];

滚动视图的框架只是它自己在self.view上占用的空间。内容大小是滚动视图的所有子视图在滚动视图内占据的大小。

【讨论】:

试过这个,不幸的是它没有解决问题。 postTextView 也是 scrollView 中唯一的子视图。

以上是关于输入文本的最后一行延伸到 UIScrollView 之外的主要内容,如果未能解决你的问题,请参考以下文章

选择文本区域的最后一行

iPhone:在嵌入式 UITextView 中输入文本时滚动 UIScrollview

为啥这段代码会删除文本的最后一行?

awk文本处理工具

excel求一列数从第一行到最后一行之和公式

使用 sed 删除文本文件最后一行中的新行