我在我的应用上使用了wk webview和我自己的工具栏。我已将webview顶部的约束设置为**安全布局区域**,如a中所述 https://medium.com/@hassanahmedkhan/playing-it-safe-with-safe-area-layout-guide-b3f09bdc71fe 和以下图片:
我的iphone X图像看起来如下,顶部和底部有额外的空白区域,我错过了我的底部工具栏。 **请注意,黑色区域被封锁,以免显示位置。这是典型的谷歌地图。 **
我希望它看起来像(注意:底部条和正确的配合 - 在iphone x版本上没有空白区域。)
我设置网页框架大小(顶部)的代码如下所示 有没有办法将我的视图设置到安全布局区域/框架本身?
同样,我将约束设置为安全布局区域,如上面的超链接所述。我需要做些什么来纠正iphone x版本? (注意:当我说的正确时,我的意思是
我的工具栏在底部的iphone 7版本中显示
谢谢。
答案 0 :(得分:0)
我的工具栏出现了。我还有额外的白色空间,yuk!如果有人对如何修复有任何想法,我们将不胜感激。
我将代码更改为:
// Iphone x does not show tool bar and has extra padding so need to change
UIWindow *mainWindow = [[[UIApplication sharedApplication] delegate] window];
CGFloat top = 0 ;
CGFloat bottom = 0 ;
bool iphoneX = NO;
if (@available(iOS 11.0, *)) {
top = mainWindow.safeAreaInsets.top ;
bottom = mainWindow.safeAreaInsets.bottom ;
if (top > 0.0) { //only have on iphonex where not zero
iphoneX = YES;
}
}
if (iphoneX)
{
rightSizeFrame.size.height = mainWindow.frame.size.height - top - bottom ;// notice subtracting the tool bar height instead of top and bottom did not work! - ( 1*TOOLBAR_HEIGHT) ; // need the bottom to see the tool bar not sure why
rightSizeFrame.origin.y = 0 ; // no top whitespace
}
// will this set the right size aand POSITION
[[ self webView] setFrame:rightSizeFrame] ;
// then stick the new webView8 into the frame
_webView8 = [[WKWebView alloc] initWithFrame:self.webView.frame
configuration:configuration];
我需要高度才能从窗框中移除底部和顶部,以便显示我的工具栏。不幸的是,就像我第一篇文章中的图片一样 - 我仍然在网页视图的顶部和下方留出了额外的空白区域。现在我在工具栏的底部有灰色空间。它看起来很糟糕,但至少是功能性的。有没有人有任何想法为什么额外的白色和灰色空间?我真的很惊讶我没有收到任何答案。我错过了一些明显的东西吗