我想将 ActionBar 的颜色更改为“材质设计”样式,但是 setbackgrounddrawable 方法将 ActionBar 的样式更改为“holo”。有谁知道“Android SDK L”是否有新方法?谢谢。
问问题
1024 次
3 回答
1
如果要在运行时更改颜色,则必须获取工具栏的对象,然后必须使用toolbar.setTitleTextColor()方法,如下所示:
Toolbar toolbar = (Toolbar) findViewById(R.id.app_bar);
toolbar.setTitleTextColor(Color.parseColor("#FF557F"));
setSupportActionBar(toolbar);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle("Title");
于 2015-04-13T06:48:30.807 回答
1
从代码只需调用getActionBar().setBackgroundDrawable()
我已经对其进行了测试,并且一切正常。试试我的代码(有点长但结果很好),我正在使用 Appcompat 但它在所有 API 中都一样:
private void colorizeAB(){
Random random = new Random();
int color = Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256));
getSupportActionBar().setBackgroundDrawable(new ColorDrawable(color));
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
colorizeAB();
}
}, 1000);
}
于 2014-10-20T18:12:43.293 回答
0
要更改 Material 主题中的操作栏颜色,您只需在主题中指定 android:colorPrimary。
<style name="MyTheme" parent="@android:style/Theme.Material.Light.DarkActionBar">
...
<item name="android:colorPrimary">@color/my_branding_color</item>
</style>
于 2014-08-19T20:13:43.117 回答