如何从ANDROID服务器动态设置主题

如何从ANDROID服务器动态设置主题,android,colors,themes,Android,Colors,Themes,我从服务器获取颜色代码,我必须将它们设置为我的主题。我知道我可以通过单独设置每个元素的颜色来实现。是否有任何方法可以动态创建主题或以编程方式声明主题的颜色。 主要目的就像一群用户可以设置自己的主题一样 private void setColors(COLORS color) { int toolbarColor = 0; int statusbarColor = 0; switch (color) { case GREEN: setTheme(R.

我从服务器获取颜色代码,我必须将它们设置为我的主题。我知道我可以通过单独设置每个元素的颜色来实现。是否有任何方法可以动态创建主题或以编程方式声明主题的颜色。 主要目的就像一群用户可以设置自己的主题一样

  private void setColors(COLORS color) {
  int toolbarColor = 0;
  int statusbarColor = 0;
  switch (color) {
      case GREEN:
          setTheme(R.style.AppTheme_NoActionBar_Green);
          toolbarColor = R.color.green;
          statusbarColor = R.color.greenDark;
          break;
      case RED:
          setTheme(R.style.AppTheme_NoActionBar_Red);
          toolbarColor = R.color.red;
          statusbarColor = R.color.redDark;
          break;
      case BLUE:
          setTheme(R.style.AppTheme_NoActionBar_Blue);
          toolbarColor = R.color.blue;
          statusbarColor = R.color.blueDark;
          break;
  }
  mToolbar.setBackgroundColor(ContextCompat.getColor(MainActivity.this, toolbarColor));
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
      getWindow().setStatusBarColor(ContextCompat.getColor(MainActivity.this, statusbarColor));
  }
}
目前,我正在做类似的事情,但随着模块的增加,在项目中,我发现这样做很难或很忙。因此,我正在寻找其他类似以编程方式设置主题颜色的东西


提前感谢您的帮助

您的AppTheme和(例如)AppTheme\u NoActionBar\u Blue是什么样子的?基本上,我的应用程序在回收器视图中有工具栏浮动操作按钮分隔符,并且还希望更改标签的颜色(颜色)已经在res->values->colors FILES下定义了。您有一组有限的颜色供用户选择吗?没有,可以是管理员或用户自己可以选择的任何颜色colors@Android你是如何做到的,你的要求,我有同样的要求,你的AppTheme和(例如)是什么AppTheme\u NoActionBar\u Blue外观?基本上,我的应用程序在回收器视图中有工具栏浮动操作按钮分隔符,并且还希望更改标签的颜色(颜色)已经在res->values->colors FILES下定义了。您有一组有限的颜色供用户选择吗?没有,可以是管理员或用户自己可以选择的任何颜色colors@Android你是如何做到的,你所要求的,我也有同样的要求