iOS 文本在 TextView 内滚动到顶部

Posted

技术标签:

【中文标题】iOS 文本在 TextView 内滚动到顶部【英文标题】:iOS text scroll to top inside a TextView 【发布时间】:2018-05-17 11:09:06 【问题描述】:

这是我的第一个 ios 项目。

我从情节提要创建了一个textview

我想要实现的是,如果我到达第 7 行末尾,第 7 行应该滚动到顶部,即它现在应该位于第 1 行,并且应该附加下一行。这是一个语音识别应用程序,单词会实时显示。

我已尽力展示我希望文本如何滚动:

我尝试了以下选项:

选项1:

  self.textView.scrollToView(self.commentsHeader, animated: true) 

选项 2:

  self.setContentOffset(desiredOffset, animated: false)

我也尝试使用 UITableView 实现相同的功能,但我唯一能做的就是将整个视图滚动到顶部,我希望之前的文本消失并且只显示最后一行。

谢谢

【问题讨论】:

【参考方案1】:

我认为您应该寻找的是来自UIScrollView 的方法setContentOffset(CGPoint, animated: Bool),这是您的选择二。

棘手的部分是计算所需的确切偏移量,但您可以使用缩放高度(类似于0.8*textView.frame.height)或根据您使用的字体的lineHeight 计算它UITextView

我希望这个答案。

【讨论】:

我试过用这个。但它不起作用。感谢您的帮助

以上是关于iOS 文本在 TextView 内滚动到顶部的主要内容,如果未能解决你的问题,请参考以下文章

禁用 UITextView 中的滚动,同时避免在 ios 的当前位置弹跳到顶部和文本不可见

iOS滚动视图禁用自动滚动到顶部

如何在 iOS 11 中像点击状态栏一样调用缓慢滚动到顶部的动画?

Microsoft Access 如何在失去焦点时阻止滚动的文本字段返回顶部(如滚动到顶部)

更改 NSMutableAttributedString 直到滚动到顶部时,文本视图中的子视图按钮消失

iOS中的UIScrollView不响应滚动到顶部