使用capacitor在ios中构建应用程序。在ios中,webview覆盖整个屏幕,对于iphone-x,这意味着缺口将被包括在内,内容将在其后面,如右图。但我希望图片在左边,黑条在“禁止区域”。
x1c 0d1x的数据
预期的解决方案(html/css)这将是设置正确的视口,并使用“安全区”插入-?“,se:https://css-tricks.com/the-notch-and-css/但在iOS的网络视图的”安全区“插入”将永远是0,这就是它的工作原理=>这个解决方案是无用的.
我该如何解决这个问题?我可以改变webview不覆盖整个屏幕,而不改变电容框架吗?
3条答案
按热度按时间0vvn1miw1#
有一个CSS变量预设的电容器,你可以用来设置填充或利润,例如。
字符串
fnx2tebb2#
您可以使用兼容的Cordova插件
cordova-plugin-safearea
字符串
安装了这个之后,您可以请求cordova/电容器桥上的安全裕度区域:
型
您可以使用这些值来指定主体上或标题/底部菜单组件上的额外填充
文档说它返回的值是Numbers,但在我看来它们实际上是字符串(在使用它们进行数学运算之前考虑parseFloat)。
我刚刚在React中实现了这一点(在React.useLayoutEffect中运行getter);该项目被 Package 在Capacitor中,并在两个具有不同巧妙的Apple notch屏幕格式的iOS设备(iPhone 8和iPhone 11 Pro)上进行了测试。
有关详细信息,请参阅https://github.com/rickgbw/cordova-plugin-safearea上的文档
o8x7eapl3#
我认为你可以像在任何正常的网站使用env()机制一样设置安全区:
字符串
(我使用的是没有Ionic的普通电容器应用程序。