【问题标题】:How would I create a UIView with two UIWebViews and another UIView and dynamically change the parent UIView size to contain the content views?如何使用两个 UIWebViews 和另一个 UIView 创建一个 UIView 并动态更改父 UIView 大小以包含内容视图?
【发布时间】:2014-09-12 14:00:22
【问题描述】:

我想要一个大视图(可能带有滚动)。它会垂直显示:

  • 一个 HTML 字符串 --> 1 个网页视图
  • 其他 HTML 字符串 --> 1 个网页视图
  • 一个带有按钮和标签的视图。 (固定大小)

我想计算 webview 的高度(在 webViewDidFinishLoad 中)以设置父 UIView 的最终大小,但在某些情况下父视图的高度会很大,所以我想我需要一个滚动视图在这种情况下。

最好的方法是什么?

【问题讨论】:

  • 你找到答案了吗?

标签: ios objective-c uiview uiwebview


【解决方案1】:

您的视图结构应如下所示。 视图控制器 -> 视图 -> 滚动视图 -> 视图 -> 所有其他内容。

在您的 webViewDidFinishLoad 方法中,您需要计算 UIWebview 中内容的高度。一旦您计算了该高度设置您的 UIWebview,您将使用该高度并重新加载它们。一旦通过内容计算了 Webview 高度但未应用,您就可以计算所有其他东西的总高度。

获取所有其他内容的高度并将其应用于滚动视图内的视图。为了滚动工作,您需要确保您的滚动视图高度实际上小于其内容的高度(包含所有其他内容的视图)。

【讨论】:

  • 谢谢。应用这个,是否可以使用故事板并在那里应用约束,以便每个视图都处于正确的位置?这种情况下的高度呢?
  • @nano 是的,您可以通过情节提要实现一切……我愿意。但是,当涉及到由于内容而调整 UIWebView 时,您将需要通过代码来完成。我建议将任何静态内容放在动态 UIWebViews 之上。这样一来,您调整定位的工作就更少了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-14
  • 2012-08-03
  • 2019-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多