在sdk更新到Android 5.0后,方法TextView.getTextColor(Context context, TypedArray typedArray, int defStyle)
消失了。
我将此方法用于我的自定义TextView(来自xml的int colorId
定义)。
那么如何从xml中确定int color id
答案 0 :(得分:2)
以下是获取TextView颜色的示例代码:
TextView tv = (TextView) findViewById(R.id.yourComponentId);
int tv_color = tv.getTextColors().getDefaultColor();
或者您也可以获得正常文字的颜色,如下所示:
TextView tv = (TextView) findViewById(R.id.yourComponentId);
int tv_color = tv.getCurrentTextColor();
如果使用第一个示例,您还可以使用
获取各种状态的颜色TextView tv = (TextView) findViewById(R.id.yourComponentId);
ColorStateList colorStateList = tv.getTextColors();
int tv_color colorStateList.getColorForState(states, failColor);
希望这有帮助。
答案 1 :(得分:1)
它已经被删除了,你可以在API diff中看到: https://developer.android.com/sdk/api_diff/21/changes.html
您仍然可以使用此变体: