2014-04-01 149 views
1

我有一个UITabBarController在我的应用程序的底部和一个视图,我想显示很多组件,我有一个UIWebView和底部我有我的UITabBarController。我的问题是我的UIWebView在底部被我的UITabBarController切断,因为在我的.xib中,我的UIWebView占用了所有剩余的空间。UWebabBarController在底部切断UIWebView

如何以编程方式解决WebView知道何时必须停止显示(仅在我的UITabBarController的顶部之前)?我希望为IOS6/7提供一个解决方案。

非常感谢!

回答

3

您可以设置底部边缘插入到您的webView.scrollView。

像:

self.webView.scrollView.contentInset = UIEdgeInsetsMake(0.0f, 0.0f, *tabbar_height*, 0.0f); 
+0

非常感谢你! tabBar高度,它是所有IOS版本和所有设备的价值修复程序? –

+0

只需使用self.tabbarController.tabBar.bounds.size.height设置底部插入。它将保证所有平台上的正确插页。 – Krivoblotsky

2

是Kirvoblotsky建议将适用于iOS 7.0而不是在iOS 7.1的工作方案。在iOS7.1上,您的web视图将在底部的标签栏顶部添加一个插页。

在包含你需要添加此修改您的Web视图的视图控制器:

-(void) viewDidLoad { 
    ... 
    // put this IF statemenet in the end 
    if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) { 
     [self setEdgesForExtendedLayout:UIRectEdgeNone]; 
    } 
} 

设置如果你不这样做,这样,那么你需要if语句时做contentInset:

if (*iOS version == 7.1*) { 
    self.webView.scrollView.contentInset = UIEdgeInsetsMake(0.0f, 0.0f, 0.f, 0.0f); 
} else if (*iOS version == 7.0) { 
    self.webView.scrollView.contentInset = UIEdgeInsetsMake(0.0f, 0.0f, *tabbar_height*, 0.0f); 
}