我正在尝试在材料设计应用程序中使用颜色来处理问题。我有一个自定义视图,该视图在其onDraw方法中执行一些操作,并且我想使用应用程序可用的颜色并与材质设计保持一致。但是,如何在我的Java代码中访问主要,辅助,字体(等)颜色?

最佳答案

这是您以编程方式访问颜色(在colors.xml中定义)的方式

private int getColor(int colorAttr) {
    TypedValue typedValue = new TypedValue();
    TypedArray a = mContext.obtainStyledAttributes(typedValue.data, new int[] { colorAttr });
    int color = a.getColor(0, 0);
    a.recycle();
    return color;
}

//examples accessing colors
int colorAccent = getColor(R.attr.colorAccent);
int colorPrimary = getColor(R.attr.colorPrimary);

关于android - 在我的自定义 View onDraw方法中使用 Material 设计颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35880746/

10-11 20:26
查看更多