RecyclerView 開發筆記:精準恢復到原來瀏覽位置

目標:項目中遇到了一個問題,一個 RecyclerView 列表切換到別的位置再切換回來的時候希望自動恢復到原來的位置。

代碼如下:

第一步:定義兩個成員變量

private int mMusicLastPosition;

private int mMusicLastOffset;

 

第二步:獲取最後位置和偏移量

if (mLinearLayoutManager != null) {

    mMusicLastPosition = mLinearLayoutManager.findLastVisibleItemPosition();

    mMusicLastOffset = mLinearLayoutManager.findViewByPosition(mMusicLastPosition).getTop();

}

 

第三步:移動到該位置

if (mLinearLayoutManager != null) {

    mLinearLayoutManager.scrollToPositionWithOffset(mMusicLastPosition, mMusicLastOffset);

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章