如何查找选择了哪个 ListView 项以将其添加到 ArrayList

Posted

技术标签:

【中文标题】如何查找选择了哪个 ListView 项以将其添加到 ArrayList【英文标题】:How to find which ListView item is selected to add it in an ArrayList 【发布时间】:2015-12-09 05:33:56 【问题描述】:

首先我很抱歉我的英语不好。 :)

我必须找出单击了哪个项目才能将其添加到 ArrayList 中。如果项目被连续点击,我想将它们连续添加到ArrayList中。

final ArrayList oldPostion = new ArrayList<Integer>();

ArrayAdapter adapterONE = new ArrayAdapter(this,android.R.layout.simple_list_item_activated_1, list);
ListView one = (ListView) findViewById(R.id.listViewOne);
one.setAdapter(adapterONE);

one.setOnItemClickListener(new AdapterView.OnItemClickListener() 
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) 

        oldPostion.add(position);
        int something = 0;
        if(oldPostion != null && oldPostion.get(position - 1) != null)
            if( oldPostion.get(position - 1) == position)

                //do something like this
                Toast.makeText(getApplicationContext(), "Item First Item" + "Selected Item" + one.getAdapter().getItem(position), Toast.LENGTH_LONG).show();
                something = 1 + 1;

            else if(oldPostion.get(position) == position)

                //do something like this
                Toast.makeText(getApplicationContext(), "Item Second Item" + "Selected Item" + one.getAdapter().getItem(position) , Toast.LENGTH_LONG).show();
                something = 1 - 1;

            

            //Result 
            Toast.makeText(getApplicationContext(), Integer.toString(something), Toast.LENGTH_LONG).show();
        
    

【问题讨论】:

position - 是列表中项目的索引 ID。列表中的每个项目都有一个从 0 开始按顺序排列的 id 号。你想在数组中存储什么,那个数字或项目文本??? 正文。我可以将文本保存在 *.txt 或 *.dat 文件中 【参考方案1】:

要获取文本,在public void onItemClick(AdapterView&lt;?&gt; parent, View view, int position, long id)

添加

TextView tv = (TextView) view.findViewById(R.id.the_text_view_id);
String text = tv.getText().toString();

【讨论】:

但我的布局中没有 TextView ? @Rida Am - 只有 ListView 是什么意思?你在列表视图中什么都没有?没有文字,没有图像,没有按钮,什么都没有?那你想得到什么文本? 我有一个 ListView,其中填充了一个包含一些产品名称的列表,仅此而已 我必须将它依次添加到数组列表中 @Rida Am - 这个产品名称不是文本视图?那它是什么,你怎么定义它?

以上是关于如何查找选择了哪个 ListView 项以将其添加到 ArrayList的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Grub 中添加菜单项以在命令行中启动 Ubuntu [关闭]

获取 input_array 和 output_array 项以将模型转换为 tflite 格式

栏按钮项以编程方式添加工具栏

如何在人脸的两个点集之间添加度量以将其用于数字图像中的对象检测以进行人脸识别

如何在阵列适配器中长按时设置按钮的可见性

如何获取 adwords 帐户客户客户 ID 以将其链接到 MCC 帐户?