Yug*_*abu 19 android statusbar
我想通过编写应用程序来更改状态栏的背景颜色.我的Android设备有黑色,我想将其改为其他颜色.我在这里看到了一些与之相关的帖子,但是他们正在讲述通知背景.
如果有人知道这个,请帮助我.
默认状态栏
使用drawable作为状态栏的背景
Fab*_*ook 13
抱歉,除非您正在制作自定义ROM,否则这是不可能的,除非您只想为您的应用更改状态栏.
这需要大量的工作.
首先,您需要将Theme.NoTitleBar.Fullscreen添加到清单中
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
>
Run Code Online (Sandbox Code Playgroud)
然后,一旦你完成了,你需要创建一个代表状态栏的标准布局,这意味着你必须添加时间,并且还接收来自其他应用程序的所有通知,我个人不知道该怎么做但是我确信有办法.
如果你真的想要做这个好运,那你就很难过.
对不起,除非你知道如何构建自定义ROMS,我不认为这是可能的
Rav*_*t D 12
这可以在Kitkat和之后进行.
如果你想在一个应用程序中使用它(就像你问的那样),你可以使用这个库https://github.com/jgilfelt/SystemBarTint
你只需要写:
// set a custom tint color for all system bars
tintManager.setTintColor(Color.parseColor("#99000FF"));
// set a custom navigation bar resource
tintManager.setNavigationBarTintResource(R.drawable.my_tint);
// set a custom status bar drawable
tintManager.setStatusBarTintDrawable(MyDrawable);
Run Code Online (Sandbox Code Playgroud)
在styles.xml中执行以下操作:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="colorPrimary">@color/color_primary</item>
<item name="colorPrimaryDark">@color/color_secondary</item>
<item name="colorAccent">@color/color_accent</item>
<!---Below is the code for status bar color------>
<item name="android:statusBarColor">@color/color_primary</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
将它放在您的values-v21/styles.xml中,以便在Lollipop及更高版本上启用它.
为此,以编程方式执行此操作:
Window window = activity.getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(activity.getResources().getColor(R.color.example_color));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
43377 次 |
最近记录: |