2017-06-03 95 views
0

我在列表的所有项目上都有回收站和按钮。当我点击我的适配器项目中的按钮删除,我想刷新回收和显示新的数据。如何在项目列表视图中点击按钮时刷新列表

@Override 
    public void onBindViewHolder(final LietnerViewHolder holder, final int position) { 
    lietner = lietners.get(position); 
    holder.txt_en.setText(lietner.getText_en()); 
    holder.txt_pe.setText(lietner.getText_pe()); 
    holder.time.setText(lietner.getTime()); 
    holder.data.setText(HelperCalendar.g2j(lietner.getTime_create())); 
    holder.next_level.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
     G.databaseOpenHelper.goToNextLevel(lietners.get(position).getId()); 

     } 
    }); 
    } 
+1

call * notifyDataSetChanged()* – Sanoop

回答

2

对于重新初始化回收视图和得到回调onBindViewHolder

简单的通话notifyDataSetChanged();

 @Override 
    public void onBindViewHolder(final LietnerViewHolder holder, final int position) { 
     lietner = lietners.get(position); 

     holder.next_level.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       // delete the item, or change the data. 
       notifyDataSetChanged(); 
      } 
     }); 
    } 
+0

我这样做,但不工作! –

0

我这样做,它适合我!

@Override 
    public void onBindViewHolder(final LietnerViewHolder holder, final int position) { 
    lietner = lietners.get(position); 
    holder.txt_en.setText(lietner.getText_en()); 
    holder.txt_pe.setText(lietner.getText_pe()); 
    holder.time.setText(lietner.getTime()); 
    holder.data.setText(HelperCalendar.g2j(lietner.getTime_create())); 
    holder.next_level.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
     G.databaseOpenHelper.goToNextLevel(lietners.get(position).getId()); 
     lietners.remove(position); 
     notifyDataSetChanged(); 
     } 
    }); 
    } 
+0

我看到你喜欢回答你自己的问题,而不是赞扬其他答案。这家伙给了你这个完全相同的答案。 –

相关问题