如何使用 Android GreenMatter 库在代码中更改 ColorAccent、ColorPrimary?
How to use the Android GreenMatter lib to change ColorAccent, ColorPrimary in Code?
您好,我想使用 GreenMatter (https://github.com/negusoft/GreenMatter) 库通过代码更改 ColorAccent、ColorPrimary 和其他(在运行时以编程方式覆盖颜色)。
我已经在 Android 项目中使用 https://github.com/negusoft/GreenMatter/wiki/Basic-GreenMatter-setup 设置了库。但是通过分析 Greenmatter 代码,我无法找出如何使用整数(颜色)来改变
我的 Android 项目中的 ColorAccent 或 ColorPirmary。
按照 setup guide 中的步骤进行操作后,您应该有一个扩展 MatActivity
的 Activity
。在您的 Activity
中,您可以通过覆盖 overridePalette()
并根据需要在 MatPalette
对象参数中设置颜色并返回它来更改主题的默认颜色。
public class MyActivity extends MatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public MatPalette overridePalette(MatPalette palette) {
palette.setColorPrimary(Color.GRAY);
palette.setColorPrimaryDark(Color.DKGRAY);
palette.setColorAccent(Color.LTGRAY);
return palette;
}
}
您好,我想使用 GreenMatter (https://github.com/negusoft/GreenMatter) 库通过代码更改 ColorAccent、ColorPrimary 和其他(在运行时以编程方式覆盖颜色)。
我已经在 Android 项目中使用 https://github.com/negusoft/GreenMatter/wiki/Basic-GreenMatter-setup 设置了库。但是通过分析 Greenmatter 代码,我无法找出如何使用整数(颜色)来改变 我的 Android 项目中的 ColorAccent 或 ColorPirmary。
按照 setup guide 中的步骤进行操作后,您应该有一个扩展 MatActivity
的 Activity
。在您的 Activity
中,您可以通过覆盖 overridePalette()
并根据需要在 MatPalette
对象参数中设置颜色并返回它来更改主题的默认颜色。
public class MyActivity extends MatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public MatPalette overridePalette(MatPalette palette) {
palette.setColorPrimary(Color.GRAY);
palette.setColorPrimaryDark(Color.DKGRAY);
palette.setColorAccent(Color.LTGRAY);
return palette;
}
}