我通过讨论同一问题得出了一些主题,但它们是特定于平台的。例如,iOS
建议在屏幕组件的顶部添加填充或添加高度等于该填充的空视图。所以发生的事情是我们对所使用的平台进行了简单的检查,如果它是iOS
应用填充或空视图,否则什么都没有。
这种方法对我来说一直很有吸引力,但直到我遇到一些 Android 设备面临同样的问题,所以填充和空视图选项现在不在桌面上,因为它不再是特定于平台的,这意味着如果我应用填充在这种情况下,其他声音 Android 设备的屏幕将被不必要地向下推,这将导致糟糕的 UI 体验。
这是我在我的应用程序中实现的:
export default () =>
<Root>
<View
style={{
height: Platform.OS === "ios" ? StatusBar.currentHeight : 0,
backgroundColor: "transparent"
}}/>
<App />
</Root>;
Stack Navigator
App和 StatusBar在哪里RN status bar API
(见这里)