我使用默认的android项目并尝试找到一种方法来更改已选中的列表视图项的背景颜色。我知道这是通过选择器完成的。我试图模仿来自全息主题的原始外观和行为,只是改变那里的颜色,但我失败了。有人可以向我解释如何获得listview项目的原始外观(longclick fade等),只是将颜色从这个奇怪的蓝色改为其他东西吗?
我有什么要从android sdk复制到我的项目以及在哪里更改所选颜色?
答案 0 :(得分:0)
假设您使用的是自定义ArrayAdapter
,则必须在onClick()
方法的第二个参数上定义getView()
侦听器。通常它被称为convertView
,但它没有。
第二个参数,非常模糊地说,引用了每一行的布局。因此,当您想要更改行的背景时,只需在第二个参数上添加onClickListener()
,然后更改背景:
convertView.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
convertView.setBackground(your_new_background);
}
});
答案 1 :(得分:0)
老兄你可以在listview中使用自定义适配器。 在自定义xml文件中,您可以更改外包。 有关详细示例,请按照here
进行操作答案 2 :(得分:0)
我不确定你问的是什么,但我明白了,我想你想要的东西
listview.setOnItemClickListener(new OnItemClickListener(){
@override
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
..............................
view.setBackground("Your color");
}
});