我有listview
,有多个选择。在每个项目中,有一个textview
说“更多”。点击文本视图后,它会在下一页显示产品的详细信息。
我在listview的onitemclicklistener pr_id = tx.getText().toString();
中完成了此操作,其中tx
是列表中包含产品ID的文本视图,而pr_id
是我通过以下方式发送到下一页的产品ID intent.`
more.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent i1 = new Intent(Product_List.this,
Product_View.class);
i1.putExtra("productid", pr_id);
Log.i("pid", pr_id);
startActivity(i1);
}
});`
一切正常,但问题是因为我有多选并说用户按照listview
按顺序选择了第1,第2和第3项,然后当他们点击第1项的“更多”按钮时。
单击“更多”按钮应显示第1项的详细信息。但是,由于他们在列表中选择了第3个项目,因此会显示这些详细信息,这意味着最后选择的项目包含视图而不是选定的第1个项目。
我该如何克服这个问题?
答案 0 :(得分:0)
在创建列表项视图时ListViewAdapter
,在“more”-TextView上使用setTag()
将pr_id
添加到其中。在more
的侦听器中调用getTag()
以检索正确的ID。