我正在使用下面的代碼ListView。問題是當我點擊一個沒有突出顯示的列表項時。你看,我試圖使用arg0.setBackgroundColor(Color.RED);
,但是當我點擊該項目並且不要讓我的手指向上時,沒有任何反應,當我點擊該項目並讓手指向上時,它會突出顯示並保持突出顯示。 如何讓我的手指向上突出顯示被刪除? 我不知道爲什麼這不像一個簡單的listview。listview與listadapter突出顯示項目
private class ListAdapter extends ArrayAdapter {
private ArrayList mList;
private Context mContext;
public ListAdapter(Context context, int textViewResourceId, ArrayList list) {
super(context, textViewResourceId, list);
this.mList = list;
this.mContext = context;
}
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
try {
if (view == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = vi.inflate(R.layout.list_item, null);
}
final Object listItem = mList.get(position);
if (listItem != null) {
((TextView) view.findViewById(R.id.tv_name)).setText(((HotOrNot) listItem).getName());
view.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
arg0.setBackgroundColor(Color.RED);
Toast.makeText(SQLView.this, "ID: " + ((HotOrNot) listItem).getID(), Toast.LENGTH_SHORT).show();
Toast.makeText(SQLView.this, "Name: " + ((HotOrNot) listItem).getName(), Toast.LENGTH_SHORT).show();
Toast.makeText(SQLView.this, "Descr: " + ((HotOrNot) listItem).getDescription(), Toast.LENGTH_SHORT).show();
// finish();
}
});
}
} catch (Exception e) {
//Log.i(Splash.ListAdapter.class.toString(), e.getMessage());
}
return view;
}
}
看一看這個問題 - 它描述瞭解決方案,你需要什麼。總之,您需要爲列表項目背景使用選擇器。 http://stackoverflow.com/questions/9434317/listview-with-listadapter-highlight-item – 2012-02-24 16:58:27