ios - UITextView的scrollRangeToVisible使范围可见出现在顶部

标签 ios swift xcode swift3 xcode8

我目前正在使用 UITextView。当我使用scrollRangeToVisible时,它可以工作,但它会将范围带到屏幕底部。我怎样才能把这个范围带到屏幕顶部。 TLDR:UITextview 方法scrollRangeToVisible 将感兴趣的字符带到 View 底部。我希望它出现在 View 的顶部。我怎样才能做到这一点?谢谢

最佳答案

一种方法是:

  • 在顶部找到所需范围的边界框
  • 如果它位于当前顶行下方,则添加 TextView 的高度
  • 然后调用.scrollRectToVisible()

您还需要一些错误和边界检查。我整理了一个扩展,如果您愿意,您可以尝试一下:https://gist.github.com/DonMag/19daac863553c51725a56f0bc3296076

关于ios - UITextView的scrollRangeToVisible使范围可见出现在顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44549338/

相关文章:

ios - ios-sim launch Error = ExecutableTwiddleFailed,ErrorDescription =无法chmod文件-没有这样的文件或目录

iOS 9 : Gesture Recognizer was setup in a storyboard/xib to be added to more than one view (not working)

ios - 按下按钮并转到 iOS 应用程序中的随机 View

objective-c - 在另一个 plist 文件中引用 info.plist 中的配置变量

iphone - 如何告诉您的 viewController 更新并将具有更新细节的对象传递给它?

iphone - 如何为 iPhone 创建一个带有黑色渐变的 UIButton?

ios - HealthKit HKAuthorizationStatus 读取数据

iOS 自动布局在父 View 外添加约束

ios - 声音文件在模拟器中工作正常,但在 iPhone 中不起作用

swift - 是否有一个 Observable 的首选类型而不需要在 Next 事件中有一个值?