6

如何在不编辑 Android 特定文件的情况下更改StatusBar组件的背景颜色?react-native

文档,我可以使用backgroundColor财产。但它失败了。barStyle属性,setBarStyle&&setBackgroundColor静态方法也不能正常工作。

只有hidden财产有效。

我正在使用create-react-native-app,使用Expo构建。

4

4 回答 4

8

在 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

于 2017-05-11T15:41:07.007 回答
5

您可以使用

<StatusBar
 backgroundColor="blue"
 barStyle="light-content"
/>

您可以在此处查看文档。

于 2017-05-11T14:25:32.037 回答
3

..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>
于 2019-05-28T14:53:19.890 回答
1

用这个

import {StatusBar} from 'react-native';


const bar = ()=>{
  return( <StatusBar backgroundColor="insert your color here"/> );
};
于 2017-07-17T13:26:07.317 回答