Android 如何将状态栏颜色更改为十六进制颜色?

Android 如何将状态栏颜色更改为十六进制颜色?,android,xml,statusbar,Android,Xml,Statusbar,因此,我想将我的应用程序中的状态栏颜色更改为65BC8D 在以前的Android Studio版本中,我可以在主题编辑器中对其进行更改,但如何直接在styles.xml中对其进行更改?如果您使用AppCompat主题中提供的标准材质主题,则这通常是colorPrimaryDark值。您可以将该值更改为所需的十六进制值。例如 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item

因此,我想将我的应用程序中的状态栏颜色更改为65BC8D

在以前的Android Studio版本中,我可以在主题编辑器中对其进行更改,但如何直接在styles.xml中对其进行更改?

如果您使用AppCompat主题中提供的标准材质主题,则这通常是colorPrimaryDark值。您可以将该值更改为所需的十六进制值。例如

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimaryDark">#65BC8D</item>
</style>
另请查看以下从中拍摄的照片,以供参考:


如果你想通过编程来实现,那么你可以使用

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
Window window = activity.getWindow();

// clear FLAG_TRANSLUCENT_STATUS flag:
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

// add FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS flag to the window
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

// finally change the color
window.setStatusBarColor(ContextCompat.getColor(activity,R.color.my_statusbar_color));
};

来源-

谢谢!这张图片真的很有用,可能是你的复制品