Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android listview中多重选择面临的困难_Android_Listview - Fatal编程技术网

Android listview中多重选择面临的困难

Android listview中多重选择面临的困难,android,listview,Android,Listview,我有一个列表视图,它有多个选择。在每个项目中,都有一个textview表示“更多”。单击textview,它会在下一页显示产品的详细信息 我已经在listview的onitemclicklistenerpr_id=tx.getText().toString()中完成了这项工作其中tx是列表中具有产品id的文本视图,pr_id是我通过意图发送到下一页的产品id` more.setOnClickListener(new OnClickListener() { @Ov

我有一个
列表视图
,它有多个选择。在每个项目中,都有一个
textview
表示“更多”。单击textview,它会在下一页显示产品的详细信息

我已经在listview的onitemclicklistener
pr_id=tx.getText().toString()中完成了这项工作
其中
tx
是列表中具有产品id的文本视图,
pr_id
是我通过意图发送到下一页的产品id`

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
中按第一、第二和第三顺序选择了3个项目,然后当他们单击第一个项目的“更多”按钮时

单击“更多”按钮应显示第一项的详细信息。但是,由于他们选择了列表中的第三个项目,因此将显示这些详细信息,这意味着最后一个选定的项目将保留视图,而不是选定的第一个项目


如何解决此问题?

在您的
ListViewAdapter
中,在为列表项创建视图时,使用“更多”文本视图上的
setTag()
将其
pr\u id
添加到列表项中。在
more
的侦听器调用
getTag()中
检索正确的id。

您必须使用复选框,或者为您的ListView设置属性多选。我设置了multichoce,但在我的设计中没有复选框。因此,我必须按照此设计进行任何操作。您必须使用ListView的复选框进行自定义布局抱歉,我没有得到您。我正在制作的项目没有复选框任何复选框..那么我如何添加复选框..您可以使用1)2)@user2595325 Shani Goriwal提到的链接展示了如何创建自定义
阵列适配器。在它的
getView()
中,可以设置标记