有没有办法在不开始滚动的情况下显示 UITextView 的滚动指示器?

Posted

技术标签:

【中文标题】有没有办法在不开始滚动的情况下显示 UITextView 的滚动指示器?【英文标题】:Is there any way to show the scroll indicator of a UITextView without starting to scroll? 【发布时间】:2012-08-21 17:38:36 【问题描述】:

我有一个带有文本的 UITextView,需要滚动才能看到完整的文本。

但是文本块之间有段落,并且文本在没有开始滚动的情况下可滚动并不是很明显,因此滚动指示器变得可见。这是因为段落之间的空行正好位于文本视图中可见文本的底部。

虽然我可以插入一些空行,以便分解文本块并且用户可以看到文本继续,但问题是应用程序将被翻译成多种语言,因此该解决方案不再可行。由于所有语言都必须单独测试,并且每种语言的空行都将插入不同的位置。

这就是我要问的原因,是否有一种方法可以向用户指示如果他向下滚动显示的文本将继续 - 在视图打开时立即 - 所以无需用户点击屏幕。

非常感谢

【问题讨论】:

***.com/questions/3281900/… 【参考方案1】:

由于 UITextView 是 UIScrollView 的子类,您可以使用方法flashScrollIndicators。 此方法闪烁滚动视图的滚动指示器,这是向用户显示内容可滚动的方式。

【讨论】:

非常感谢!为了让滚动指示器可见的时间更长,我只需在 viewDidLoad 和 viewDidAppear 中调用它。超级简单,符合 iPhone 标准! 喜欢这个答案哈哈。【参考方案2】:

你可以试试这个:

[yourTextView flashScrollIndicators];

【讨论】:

【参考方案3】:

我会隐藏内置滚动指示器并实现您自己的。只需创建一个看起来像滚动指示器的自定义视图,并通过UITextViewscrollOffset 确定它的位置。

【讨论】:

【参考方案4】:

site 提供了一个解决方案,您可以在其中始终显示滚动条。基本上你要做的是为你的UITextView 创建一个类别。

话虽如此,Apple 的人机界面指南不鼓励这样做,它们只提供了一种闪烁滚动指示器的方法。所以你可以在明智的时刻调用flashScrollIndicators 方法。 e.当用户第一次看到包含你 UITextView 的 ViewController 时。

【讨论】:

【参考方案5】:

Swift 中的代码:

textView.flashScrollIndicators()

【讨论】:

以上是关于有没有办法在不开始滚动的情况下显示 UITextView 的滚动指示器?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不丢失触摸事件的情况下冻结 UIScrollView 滚动

Google Sheet Script:有没有办法在不停止脚本的情况下显示消息?

有没有办法在不导入的情况下显示图像? [复制]

我可以在不滚动网页的情况下更新 window.location.hash 吗?

有没有办法在不实际 ping 用户的情况下提及用户(蓝色突出显示)?

如何在不隐藏正文滚动条的情况下在固定 div 上滚动时禁用正文滚动?