我一直试图直观地指出ParseQueryAdapter生成的列表中的单个元素的状态,但下面的代码更改了多行的背景颜色。
每当调用setBackgroudColor时都试图记录,这似乎是正确的,所以它必须是由于android重用我认为的视图。
@Override
public View getItemView(final ParseObject object, View v, ViewGroup parent) {
if (v == null) {
v = View.inflate(getContext(),
R.layout.view_circuitunit_adapter_item, null);
}
super.getItemView(object, v, parent);
final CircuitUnitStarted circuitUnitStarted = (CircuitUnitStarted) object;
if (circuitUnitStarted.getTimeEnded() != null) {
v.setBackgroundColor(Color.LTGRAY);
}
return v;
}
答案 0 :(得分:0)
一个简单的解决方案似乎总是颜色为白色或灰色:
if (circuitUnitStarted.getTimeEnded() != null) {
v.setBackgroundColor(Color.LTGRAY);
} else {
v.setBackgroundColor(Color.WHITE);
}
不知道为什么我之前没有想到