我有一个布局列表视图打印出一些信息,由于某种原因,当我点击它没有突出显示的每个元素时,告诉我我的列表视图是不可点击的。这是我的代码。
ListView lv = (ListView) findViewById(R.id.imtrackinglistview);
refreshList(response, lv);
static final ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
private void refreshList(String response, ListView lv) {
// removes the list and rebuilds it will choose different response
// string to get the refreshed times
list.removeAll(list);
SpecialAdapter adapter = new SpecialAdapter(this, list,
R.layout.imtracking_row_text,
new String[] { "name", "location" }, new int[] {
R.id.tvImtrackingName, R.id.tvImtrackingLocation });
lv.setAdapter(adapter);
适配器是我可以在背景颜色之间切换的。
public class SpecialAdapter extends SimpleAdapter{
private int[] colors=new int[]{0x30FF0000, 0x300000FF};
public SpecialAdapter (AnotherlistviewActivity context, ArrayList<HashMap<String, String>> list, int resource, String[] from, int[] to){
super(context, list, resource, from, to);
}
@Override
public View getView(int position, View convertView, ViewGroup parent){
View view=super.getView(position, convertView, parent);
int colorPos=position%colors.length;
view.setBackgroundColor(colors[colorPos]);
return view;
}
}
我觉得奇怪的是突然我的列表视图无法点击,希望有人能弄明白为什么会这样。感谢
答案 0 :(得分:1)
这可能有用。
list.setClickable(true);
编辑:您可能还需要
list.setEnabled(true);
答案 1 :(得分:1)
这可能有效:
ListView lv = getListView();
lv.setClickable(true);
lv.setEnabled(true);
答案 2 :(得分:1)
如果你想做点什么,那么你必须去添加setOnClickListener(lv)。有时您可能不知道ListView是可点击的,因为单击时颜色不会改变。