我有一个ListView
,其中包含10个项目。
单击后是否可以禁用所选列表项? 我正在使用自定义适配器。请帮忙? 感谢
编辑:
ListViewAdapter
:
public class ListViewAdapter extends BaseAdapter {
Context context;
LayoutInflater inflater;
ArrayList<HashMap<String, String>> data;
HashMap<String, String> resultp = new HashMap<String, String>();
public ListViewAdapter(Context context,
ArrayList<HashMap<String, String>> arraylist) {
this.context = context;
data = arraylist;
}
@Override
public int getCount() {
return data.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
TextView qs1;
TextView qs2;
View v = convertView;
if (v == null) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inflater.inflate(R.layout.listitem, null);
}
resultp = data.get(position);
qs2 = (TextView) v.findViewById(R.id.qs);
qs2.setText(resultp.get(Home.QUESTION));
v.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
resultp = data.get(position);
Intent intent = new Intent(context, SingleItemView.class);
intent.putExtra("question", resultp.get(Home.QUESTION));
intent.putExtra("ques_id", resultp.get(Home.QUES_ID));
context.startActivity(intent);
}
});
return v;
}
}
答案 0 :(得分:1)
是的:
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
arg0.setEnabled(false);
}
});
这应该禁用整个列表视图项。
答案 1 :(得分:0)
v.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
if(arg2 == 0)
{
// 1st element out of 10, do nothing to disable this row
}
if(arg2 == 1)
{
// 2nd element out of 10, do nothing to disable this row
}
}
});