如何在表格视图单元格中放置UIWebView并保持其滚动条?

时间:2009-01-14 15:19:55

标签: iphone cocoa-touch uiwebview

如何在表格视图单元格中放置UIWebView,同时维护UIWebView的滚动条?我的表视图也有多个单元格和一个标题框架,我确实需要它可以滚动,因为它有很多行。

当我使用UITextView并显示滚动条时,文本显示完全正常,但问题是我的内容是富文本,所以我没有任何其他选项,只能在UIWebView中显示内容。任何想法,黑客?

7 个答案:

答案 0 :(得分:3)

除非Apple对此有所帮助,否则这不起作用。 UITableView和UIWebView都支持滚动条,它们相互矛盾。 UITableView滚动器采用先行程序,因此每当执行滚动操作时,操作都会发送到UITableView而不是UIWebView。

出于某种原因,当UITextView与UITableView一起使用时,滚动条适用于两者。

答案 1 :(得分:2)

将UIWebView添加到表格单元格中的问题是这些对象都是可滚动的(tableview和webview),如果使用不当会产生复杂性。你的tableview有除uiwebview以外的任何细胞吗?你需要tableview可滚动吗?如果tableview不需要可滚动,则在webview中启用滚动并为tableview禁用滚动。这应该有用。

但是如果你只想显示文本,为什么不使用UITextView(虽然你也会遇到UITextView的同样问题)?

答案 2 :(得分:2)

我刚刚在UIWebView文档中找到了这个:

“重要说明:您不应该在UIS​​crollView对象中嵌入UIWebView或UITableView对象。如果这样做,可能会导致意外行为,因为这两个对象的触摸事件可能混淆和错误处理。”

答案 3 :(得分:1)

将内容放入UIWebView时,会自动添加滚动条。请务必在“界面”构建器中取消选中“缩放页面以适合”,以便在显示时不重新缩放页面。

答案 4 :(得分:1)

当UIWebView的内容超出UIView的高度时,它将自动显示滚动条。

答案 5 :(得分:1)

您可以将UIWebView放入UIScrollView,并通过将UISCrollView的canCancelTouchEvents属性设置为NO来同时滚动。如果你只是轻弹,UIScrollView将滚动。如果您将手指放下一小段时间然后开始轻弹,UIWebView将会滚动。

答案 6 :(得分:0)

试试这个快速黑客,看看你是否可以强制网页视图显示滚动指示器: ((UIScrollView *)[webView.subViews objectAtIndex:0])。showsVerticalScrollIndicator = YES;

更彻底的方法是将您的单元格内容划分为摘要和详细信息。在每个单元格中显示摘要,但没有详细信息。选择单元格后,使用新屏幕显示所选单元格的完整内容。这完全避免了在可滚动视图内部具有可滚动视图的可用性问题。