无法从阵列适配器中删除特定索引处的项目

时间:2015-08-12 11:00:18

标签: android arraylist android-arrayadapter

我无法从特定索引处的arraylist中删除项目。

当我尝试删除项目时,它只会从底部删除。

private ArrayList<myproduct> values;



public View getView(final int position, final View convertView,
        ViewGroup parent) {
    final ViewHolder holder;
    View v = convertView;

    if (v == null) {
        final LayoutInflater vi = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        v = vi.inflate(R.layout.row_favourite, parent, false);
        holder = new ViewHolder();

        holder.btnaddcollection = (Button) v
                .findViewById(R.id.btnaddcollection);

        v.setTag(holder);
    } else {
        holder = (ViewHolder) v.getTag();
    }



    homeproduct mhomeproduct  = values.get(position);


    holder.btnaddcollection.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub


            values.remove(position);

        }
    });
    return v;
}

static class ViewHolder {

    public Button btnaddcollection;

}

当我尝试删除时,从上面的代码中,它从底部开始删除。

如何开始从特定位置的顶部删除项目。?

1 个答案:

答案 0 :(得分:3)

删除项目后调用notifyDataSetChanged()

这会对适配器“说”:“呃!!数据已被更改!”