从recycleradapter类访问arraylist

时间:2018-05-08 06:43:53

标签: android recycler-adapter

我想从非活动类到片段访问ArrayList

       @Override
public void onBindViewHolder(final DataObjectHolder holder, final int position)
{
    holder.setIsRecyclable(false);
    holder.itemid.setText(mDataset.get(position).getItem_id());
    holder.itemname.setText(mDataset.get(position).getItem_name());
    holder.qty.setText(mDataset.get(position).getQty());
    int  rt=Integer.parseInt(mDataset.get(position).getRate().substring(0,mDataset.get(position).getRate().length() - 3));
    holder.rate.setText(formatter.format(rt)+".00");
    ItemDetails listItem = filterList.get(position);
    holder.itemname.setText(listItem.getItem_name());
    holder.plus.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v)
        {
            holder.qty.setText(String.valueOf(++qt));
            mDataset.get(position).setQty(String.valueOf(qt));
            finalDataset.add(new ItemDetails(ItemFragment.getInstance().cat_id,String.valueOf(holder.itemid.getText()),String.valueOf(holder.itemname.getText()),String.valueOf(holder.rate.getText()),String.valueOf(holder.qty.getText())));
        }
    });
    holder.minus.setOnClickListener(new View.OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            if(qt==0)
            {
                holder.qty.setText(String.valueOf(0));
            }
            else
            {
                holder.qty.setText(String.valueOf(--qt));
            }
            mDataset.get(position).setQty(String.valueOf(qt));
            finalDataset.add(new ItemDetails(ItemFragment.getInstance().cat_id,String.valueOf(holder.itemid.getText()),String.valueOf(holder.itemname.getText()),String.valueOf(holder.rate.getText()),String.valueOf(holder.qty.getText())));
        }
    });
}

finalDataset是提到的ArrayList。我将值添加到ArrayList类中onBindViewHolder方法内的recycleradapter。我想在另一个片段中访问它。

1 个答案:

答案 0 :(得分:4)

创建方法以在适配器类中返回List,

public List<ItemDetails> getDataset() {
        return finalDataset;
}

在fragment类中使用

访问它
List<ItemDetails> finalDataset = adapter.getDataset();