我正在使用带有文本的UIWebView。当iPhone旋转到横向时,文本不会填充现在更宽的UIWebView宽度。我正在使用P(段落)标签,这不应该影响内容填充景观的宽度。在纵向中可见的换行符在横向上保持不变。在Interface Builder中,我没有改变任何东西。在IB检查器中,Web视图大小在AutoSizing下有所有实心条,这意味着它应该填充到横向宽度吗?
答案 0 :(得分:2)
这是一个调整虽然不是一件好事,但苹果本身应该处理一些事情
正如您已经注意到,当WebView以纵向方式初始化然后您将其转换为横向时,工作正常。所以..你可以做的是始终用纵向边界初始化你的webview,添加一个选择器,在2~3秒后回调,并根据你的要求设置webView的框架。
现在,当webview的帧大小是根据肖像(例如320,460)开始加载内容时,如果您的代码中有此行,则将您的webview转换为横向将自动调整您的Web视图
[webViewObjet_ setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
以下是代码片段
- (id) initWithFrame:(CGRect)frame
{
if (self = [super initWithFrame:frame])
{
webViewObjet_ = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
.....
}
}
- (void) webViewDidStartLoad:(UIWebView *)webView
{
.....
[self performSelector:@selector(chuss) withObject:nil afterDelay:3];
// call the function chuss after 3 second
}
- (void) chuss
{
webViewObjet_.frame = CGRectMake(0, 0, self.frame.size.width, self.frame.size.height);
[webViewObjet setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
}
答案 1 :(得分:1)
现在尝试了同样的问题,最后看了详细的“WhichWayIsUp” - 来自Apple的示例。
保持简短:
1)在视图检查器中禁用| - |和< - >
2)`将视图模式从Webview切换到“Aspect Fill”
Et瞧瞧;)
保持共鸣, 狂
答案 2 :(得分:0)
我有同样的问题。重新加载不起作用,唯一似乎有点帮助的是在代码中添加以下行:
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth;
(我把它放在willAnimateFirstHalfOfRotationToInterfaceOrientation函数中)
它仍然在右边保持一个小的白色边距,但它远远优于默认值。注意:您应该在self.view上应用它,而不是在UIWebView实例上应用它,这将无效。
等待Apple的解决方案..
彼得
答案 3 :(得分:0)
这听起来很奇怪,但确实有效:
如果UIWebView在UINavigationController中,它将全部正常工作。我有同样的问题,所以我把它包装在UINavigationController中,问题就消失了。
出于某种原因,UINavigationController使旋转工作就像魅力一样。