在我的应用程序的package.json中,我有以下命令:
"build-android-eas": "set EAS_NO_VCS=1 && eas build --profile preview --platform android",
"build-android-old": "set EAS_NO_VCS=1 && expo build:android -t apk",在app.json中,我设置了颜色:
"androidNavigationBar": {
"backgroundColor":"#363636"
}这两个构建命令都已成功执行,但结果不同:

也就是说,在EAS中,导航条保持默认的白色bg颜色,而老的expo则产生预期的结果。
我遗漏了什么?
提亚
发布于 2022-08-30 09:27:52
我在这里引用https://github.com/expo/expo/issues/13062的解决方案
我将"expo-navigation-bar": "^1.3.0"添加到我的依赖项中,并在主"App“组件中调用它:
export default () => {
useEffect( _ => {
const prepare = async _ => {
NavigationBar.setBackgroundColorAsync( '#363636' )
await SplashScreen.preventAutoHideAsync()
}
prepare()
}, [] )
// some code
}从光学上看,它显示了NavBar on SplashScreen的默认(白色)颜色,然后在大约500 ms内将其重新绘制成我需要的颜色,并在应用程序的其余部分保持不变。
顺便说一下,如果在设置器前面调用NavigationBar.getBackgroundColorAsync(),它将返回在app.json中定义的正确颜色。但是那种颜色没有效果。
也许这会对现在的人有所帮助。
https://stackoverflow.com/questions/72393840
复制相似问题