我在将颜色应用到我的应用程序时遇到一些问题。我想实现从web上获得一些json,就像这样:
{
"colorPrimary": "#45a02c",
"colorAccent": "#a02c2c",
"backgroundColor": "#FFFFFF"
}
并将其存储在我创建的像ThemeColor这样的对象中。将json解析成对象是没有问题的,但是现在我想在我的ThemeColor类中创建一个方法,该方法将对象的颜色应用到我的应用程序中,这样我的工具栏将以这种原色着色,或者我可以在?attr/colorPrimary
中使用它。
这有可能吗?什么是实现这一目标的好方法?
发布于 2019-05-27 20:46:48
在style.xml
中定义自定义主题,并在活动中使用该主题
style.xml
<style name="CustomTheme" parent="Theme.AppCompat.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/your_custom_color</item>
<item name="colorPrimaryDark">@color/your_custom_color_2</item>
<item name="android:navigationBarColor">@color/your_custom_colot_3</item>
</style>
并在您的活动中使用该主题
public void onCreate(Bundle savedInstanceState) {
setTheme(android.R.style.CustomTheme); //here your custom theme
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
https://stackoverflow.com/questions/56326310
复制相似问题