我的 UITextView 使用属性文本。 当我调用 resignFirstResponder 时,它总是滚动到顶部。
这只发生在我的 iOS 8 模拟器上。不是我的 iOS 7 手机。
有什么办法可以防止这种情况发生吗?
最佳答案
我想我找到了解决这个问题的方法。
首先,我现在调用 [textView setEditable:NO]
来关闭键盘,而不是调用 resignFirstResponder
。
在 iOS 8 中初始化 UITextView 时似乎有一个错误。长话短说, subview (我的 UITextView)UITextContainerView 的 minSize Y 值没有被初始化为与 UITextView 的框架相同的大小。它被设置为 0。
为了强制初始化该值,因为它不能直接访问,我发现在 viewDidLoad
中调用 [textView setScrollEnabled:NO]
会将 Y 设置为相同作为我框架的大小 Y 值,它解决了我在 iOS 8 中的很多滚动问题。
我还必须在 viewDidAppear
中将滚动设置回启用,这样它们仍然可以滚动。
关于uiscrollview - UITextView 在 iOS 8 中隐藏键盘时滚动到顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26258213/