在我的自定义视图onDraw方法

时间:2016-03-09 00:30:24

标签: android material-design ondraw

我试图用材料设计应用程序中的颜色来包裹我。我有一个自定义视图,它在onDraw方法中做了一些事情,我想使用应用程序可用的颜色并与材质设计保持一致。但是,如何在我的java代码中访问主要,次要,字体(等)颜色?

1 个答案:

答案 0 :(得分:1)

以下是编程方式访问颜色的方法(在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);