我的ImageView出现问题。顺便说一句,我正在使用CircularImageView,它具有一个属性app:selector_color。
这是方案。 ImageView有一个可绘制(src)。我想发生的是,当我单击ImageView时,我想向它添加色彩。
到目前为止,这是我尝试过的:
viewHolder.ivProfile.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
result = data.get(position);
int highlightColor = context.getResources().getColor(R.color.main_red_transparent);
PorterDuffColorFilter colorFilter = new PorterDuffColorFilter(highlightColor, PorterDuff.Mode.SRC_ATOP);
CircularImageView ci = (CircularImageView) v;
if (thumbnailsselection[position]) {
ci.setSelected(false);
thumbnailsselection[position] = false;
viewHolder.tvTitle.setVisibility(View.GONE);
} else {
ci.setSelected(true);
ci.getDrawable().setColorFilter(highlightColor, PorterDuff.Mode.SRC_ATOP);
thumbnailsselection[position] = true;
viewHolder.tvTitle.setVisibility(View.VISIBLE);
viewHolder.tvTitle.setText(result.get(NAME));
}
}
});
但是此解决方案不起作用。这里有人尝试过吗?我很高兴得到任何帮助。提前致谢!
最佳答案
尝试使用选择器颜色代替设置过滤器,如下所示:
CircularImageView ci = ...;
ci.setSelected(true);
ci.setSelectorColor(highlightColor);