(iOS7) 在 UIScrollView 中的 UITableView 中滚动到 UITextView 中的光标

Posted

技术标签:

【中文标题】(iOS7) 在 UIScrollView 中的 UITableView 中滚动到 UITextView 中的光标【英文标题】:(iOS7) Scroll to cursor in UITextView in UITableView in UIScrollView 【发布时间】:2013-10-07 04:46:54 【问题描述】:

我更新到 ios7 后遇到问题。

我有水平基础UIScrollView,上面有UITableView (看起来像导航风格)。 我在UITableViewaddChild UITextView 不是在单元格上。

在键入键盘时它会滚动到UITextView 的光标。它在 iOS 6 之前运行良好,但在更新 iOS7 之后就没有了。

我该如何解决这个问题?

谢谢。

【问题讨论】:

你能添加一些截图吗? 感谢您的评论。我有三个 UITableView。它们位于水平滚动的 UIScrollView 上。每个 UITableView 上都有 UITextView。就是这样。 我的图片值 1000 字 :) 也确实添加了一些代码。这样我们就可以知道问题可能出在哪里! 我为此付出了很多,因为我遇到了类似的问题,即当用户在 UITableViewCell 内键入自动调整大小的 UITextView 时,tableview 不会滚动以显示光标(好吧,这听起来和我有关!) 可以加一些代码或者截图吗? 【参考方案1】:

在 UITextViewDelegate 中处理 textViewDidChangeSelection

- (void)textViewDidChangeSelection:(UITextView *)textView 
    [textView scrollRangeToVisible:textView.selectedRange];

确切的解决方案取决于您的应用程序,您可以通过子类化 UITextView 来处理,但我更喜欢这里的装饰器模式(在 UITextViewDelegate 协议上)。

希望对你有帮助。

【讨论】:

【参考方案2】:

您是否在 xCode4 中创建了 XIB,现在尝试在 xCode5 中打开它? 如果是,请正确检查您的 XIB,因为 Xcode5 会更新较旧的 xCode 4.x XIB,有时它会导致无法预测的输出。当我在 Xcode5 中打开它后我的所有视图都消失时,我面临同样的问题。

还请尝试更改 File Inspector 中的 xib 设置以在 xcode 4.x 中打开并以 ios6.1 及更早版本查看,看看它是否有任何变化..

【讨论】:

以上是关于(iOS7) 在 UIScrollView 中的 UITableView 中滚动到 UITextView 中的光标的主要内容,如果未能解决你的问题,请参考以下文章

iOS7 中 UIScrollView 中的 UITableView

为啥我不能在 iOS 7.0 中的 UIScrollView 中滚动?

UIScrollView 在 iOS7 上捏合时返回错误

iOS7 UIScrollView 在状态栏下方显示偏移内容

iOS7 UIPickerView / UIScrollView

iOS7 自动布局与 Tabbar 结合 UIScrollView 和可缩放 UIImageView 不起作用