每个应用在Andmanifest.xml中都会设置Theme,Theme中定义了很过apk里面的一些主题属性(即整个环境的属性,如apk运行的背景颜色,里面Dialog的样式等等)。
在应用中有时会改变某个控件或者View的背景颜色,再通过某个触发事件,返回到Theme的背景颜色,需要获取Theme背景颜色属性。
可通过如下方法获取:
TypedArray array = getTheme().obtainStyledAttributes(new int[] {
android.R.attr.colorBackground,
android.R.attr.textColorPrimary,
});
int backgroundColor = array.getColor(0, 0xFF00FF);
int textColor = array.getColor(1, 0xFF00FF);
array.recycle();