有人知道在Drawables
和android.R.attr.listChoiceIndicatorMultiple
android.R.attr.listChoiceIndicatorSingle?
是什么
我想以编程方式在没有原始资源的模式之间切换。
无法使用这种方式:
view.setCheckMarkDrawable(android.R.attr.listChoiceIndicatorMultiple);
所以我试图找出android.R.attr.listChoiceIndicatorMultiple
答案 0 :(得分:1)
我在appCompat中找到了以下资源:
static int checkMaterial = android.support.v7.appcompat.R.drawable.abc_btn_check_material;
static int radioMaterial = android.support.v7.appcompat.R.drawable.abc_btn_radio_material;
它工作正常!
<强>被修改强>
更好的解决方案:
ViewHolder holder;...
TypedValue value = new TypedValue();
Resources.Theme theme = holder.textView.getContext().getTheme();
int checkMarkDrawableResId;
if (isMultiSelectionEnabled) {
theme.resolveAttribute(android.R.attr.listChoiceIndicatorMultiple, value, true);
int checkMarkDrawableResId = value.resourceId;
} else {
theme.resolveAttribute(android.R.attr.listChoiceIndicatorSingle, value, true);
int checkMarkDrawableResId = value.resourceId;
}
holder.textView.setCheckMarkDrawable(checkMarkDrawableResId);