我有一个桌面应用程序使用的List of themes in a database。
所以,假设我的Android应用程序具有Base应用程序主题:
<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>
<item name="android:windowBackground">@android:color/white</item>
</style>
在桌面应用程序中,可以编辑主题并添加新主题。 (因此,使用themes.xml或styles.xml对所有现有主题进行硬编码会有问题)。
其中一个主题的Json看起来像这样:
[
{
"id_temas": 1,
"tema_nome": "Padrão",
"bd_barratitulo": "#FF00308B",
"bd_fundo": "#FFD2E8EC",
"bd_titulo": "#FFFFFFFF",
"linear_1a": "#FF002E8A",
"linear_1b": "#FF0071B7",
"linear_1c": "#FF002E8A",
"linear_2a": "#4C8BC0",
"linear_2b": "#015CA3",
"linear_2c": "#024795",
"linear_2d": "#2C5198",
"linear_3a": "#000098",
"linear_3b": "#000075",
"linear_3c": "#000075",
"linear_3d": "#000082",
"person": 0
}
]
所以,问题是:如何检索我存储在数据库中的十六进制字符串并应用于android活动?这个想法是,当用户登录时,条形图和背景等,从数据库的主题列表中获取颜色。
非常感谢提前。
如果你想设置背景颜色,请尝试这样做:
currentLayout.setBackgroundColor(Color.parseColor( “#FFFFFF”));
其中#FFFFFF是你json的字符串