使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)建站于2013年成立,先為雁山等服務(wù)建站,雁山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為雁山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

1、notifyItemInserted(int position) 

意思就是在位置position的地方,插入一條。
看代碼

public class TestActivity extends AppCompatActivity {


  @Bind(R.id.button_add)
  Button buttonAdd;
  @Bind(R.id.recycler)
  RecyclerView recycler;

  private MyAdapter mAdapter;
  private List<String> mList = new ArrayList<>();
  private int count = 0;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_edit_text);
    ButterKnife.bind(this);

    initData();

    recycler.setLayoutManager(new LinearLayoutManager(this));

    mAdapter = new MyAdapter(this,mList);
    recycler.setAdapter(mAdapter);
  }

  private void initData() {

    for(int i=0;i<15;i++){
      mList.add(i+"");
    }
  }

  @OnClick(R.id.button_add)
  public void add(){
    count++;
    mList.add(2,"插入"+count);
    mAdapter.notifyItemInserted(2);
    mAdapter.notifyItemRangeChanged(2,mList.size()-2);
  }
}

使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能

看代碼可以知道,我在position=2的位置,插入了數(shù)據(jù),結(jié)果很快插入了,不需要更新整個(gè)列表

2、但是大家會(huì)發(fā)現(xiàn),我代碼里面還有一句

mAdapter.notifyItemRangeChanged(2,mList.size()-2)

這句話是什么意思呢?意思就是從position為2位置開(kāi)始的itemCount個(gè)數(shù)的item是新加來(lái)的,后面的位置position要相應(yīng)的更新。

比如我在位置2的地方添加一條數(shù)據(jù),原來(lái)位置2的地方的的數(shù)據(jù)現(xiàn)在的position應(yīng)該是3了,如果不加這句話,則點(diǎn)擊3的時(shí)候,還是提示position為2。

這個(gè)應(yīng)該是google的一個(gè)bug。

3、notifyItemRemoved(int position),把position位置的那條刪除

@OnClick(R.id.button_delete)
  public void delete(){
    mList.remove(2);
    mAdapter.notifyItemRemoved(2);
    mAdapter.notifyItemRangeChanged(0,mList.size()-2);
  }

這段代碼的意思是把position為2位置的那條數(shù)據(jù)刪掉,看效果

使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能

上述就是小編為大家分享的使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享文章:使用RecyclerView怎么實(shí)現(xiàn)一個(gè)插入和刪除功能-創(chuàng)新互聯(lián)
地址分享:http://muchs.cn/article22/cdigjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、商城網(wǎng)站服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化