如何在不编辑 Android 特定文件的情况下更改StatusBar
组件的背景颜色?react-native
文档说,我可以使用backgroundColor
财产。但它失败了。barStyle
属性,setBarStyle
&&setBackgroundColor
静态方法也不能正常工作。
只有hidden
财产有效。
我正在使用create-react-native-app
,使用Expo构建。
如何在不编辑 Android 特定文件的情况下更改StatusBar
组件的背景颜色?react-native
文档说,我可以使用backgroundColor
财产。但它失败了。barStyle
属性,setBarStyle
&&setBackgroundColor
静态方法也不能正常工作。
只有hidden
财产有效。
我正在使用create-react-native-app
,使用Expo构建。
在 Expo App 中,您需要app.json
在项目根目录中进行编辑,如下所示:
{
"expo": {
"sdkVersion": "16.0.0",
"androidStatusBar": {
"barStyle": "dark-content",
"backgroundColor": "#0A48A5"
}
}
}
请参阅世博会文档: https ://docs.expo.io/versions/v16.0.0/guides/configuration.html
在..android/app/src/main/res/values中添加color.xml并输入以下代码
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- color for the app bar and other primary UI elements -->
<color name="colorPrimary">#3F51B5</color>
<!-- a darker variant of the primary color, used for
the status bar (on Android 5.0+) and contextual app bars -->
<color name="colorPrimaryDark">#A52D53</color>
<!-- a secondary color for controls like checkboxes and text fields -->
<color name="colorAccent">#FF4081</color>
</resources>
在..android/app/src/main/res/values/styles.xml中复制并粘贴以下代码
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
用这个
import {StatusBar} from 'react-native';
const bar = ()=>{
return( <StatusBar backgroundColor="insert your color here"/> );
};