我想改变背景视图,当它被按下(其工作)。我的问题是,如果我在列表中按下另一个视图(不是同一个视图),我想将我的背景设置为新选择视图的黑色,并将背景更改为先前选择视图的白色。这是我的实现
for(final TotalPlayers player : this.playerData){
final ArrayList<View> addedPlayerViews1 = getPlayerView(player);
dropPlayersListView.addView(addedPlayerViews1.get(0));
addedPlayerViews1.get(0).setOnClickListener(new OnClickListener() {
boolean highlight = false;
@Override
public void onClick(View v) {
if (!highlight)
{
addedPlayerViews1.get(0).setBackgroundColor(Color.BLACK);
highlight=true;
}
else {
addedPlayerViews1.get(0).setBackgroundColor(Color.WHITE);
highlight=false;
}
}
});
}
}
addedPlayerViews1.get(1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
addedPlayerViews1.get(0).setBackgroundColor(Color.WHITE);
highlight=false;
}
});
我假设你可以通过get(1)获得另一个视图。
你的代码的问题是你只处理你的视图的onClick事件,你想改变背景。但是你也需要处理其他视图的onClick