Android 灰显应用程序图标拼图

Android 灰显应用程序图标拼图,android,process,icons,Android,Process,Icons,我使用这些代码来灰显RunningAppProcessInfo的图标,但会导致其他列表中的所有图标也灰显的副作用!啜饮?有什么解决办法吗 ImageView icon = (ImageView) view.findViewById(R.id.icon); if (_isChecked) { ColorMatrix cm = new ColorMatrix(); cm.setSaturation(0);

我使用这些代码来灰显RunningAppProcessInfo的图标,但会导致其他列表中的所有图标也灰显的副作用!啜饮?有什么解决办法吗

        ImageView icon = (ImageView) view.findViewById(R.id.icon);
        if (_isChecked) {
            ColorMatrix cm = new ColorMatrix();
            cm.setSaturation(0);
            icon.setColorFilter(new ColorMatrixColorFilter(cm));
        }

如果您在这里谈论的是ListView或其他内容,请按如下方式操作:

ImageView icon = (ImageView) view.findViewById(R.id.icon); 
if (_isChecked) { 
    ColorMatrix cm = new ColorMatrix(); 
    cm.setSaturation(0); 
    icon.setColorFilter(new ColorMatrixColorFilter(cm)); 
} 
else {
    // Reset saturation to normal here
}

原因是视图在ListView中被重用以提高性能。

是的,我按照您在list1中所说的做了,但在list2中仍然有副作用: 事实:似乎所有运行的AppProcessInfo只共享同一个图标

        if (_isChecked) {

            ColorMatrix cm = new ColorMatrix();
            cm.setSaturation(1);
            icon.setColorFilter(new ColorMatrixColorFilter(cm));

        } else {
            appName.setTextColor(Color.GRAY);
            whitelist_item_type_tv.setTextColor(Color.GRAY);

            ColorMatrix cm = new ColorMatrix();
            cm.setSaturation(0);
            icon.setColorFilter(new ColorMatrixColorFilter(cm));

        }