Uiwebview在横屏模式下启动时无法正确调整为竖屏模式,但在竖屏模式下启动一切正常。

3
这是一个相当奇怪的错误。我有一个标签栏控制器,其中包含嵌套的导航控制器,然后有标准的tableview。当您点击单元格时,将在控制器上推送一个新的视图。这是一个常规视图,带有一个嵌套的uiwebview,占据整个视图。
在竖屏模式下进入该视图时,它看起来很好,在将其旋转到横向模式时也很好,再次转回竖屏也很好。
但是,当使用横向模式进入该视图时,它看起来很好,但旋转到竖屏似乎无法调整大小,宽度仍然太宽,文字较大。
我已经尝试过: 1. webView.frame = self.view.frame; - 这似乎没有改变它的行为 2. 视图和webview都设置为自动调整大小,并且像我说的那样在竖屏模式下工作。 3. [webView setFrame:CGRectMake(0, 0, 320,411)]; 当从横向模式旋转到竖屏模式时。这真的很奇怪,它使得webview占据了屏幕的一半。字体仍然很大。 4. 我将自动调整大小更改为禁用,在方向更改时手动调整大小,然后执行[webView reload];
我尝试过各种其他方法和组合。这个问题在所有webview的子视图中都是一致的。
我有点新,请尽可能详细地解释。

唉,我找了好几个小时终于发现你把以下代码放在HTML的头部:<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;'> - Todd Horst
欢迎来到StackOverflow!很高兴看到您已经解决了问题。请务必将您的答案标记为正确,以便其他可能遇到这个问题的人受益。 - Moshe
1个回答

5
在您的HTML头部使用<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;'>,这将有助于确保您的网站在不同设备上以最佳方式显示。

1
正确的语法使用逗号而不是分号来分隔内容:"width=device-width, initial-scale=1.0, maximum-scale=1.0" - TalkLittle

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接