admin管理员组

文章数量:1611548

一、关于LinearLayoutManager或GridLayoutManager获取当前屏幕第一个条目的位置或最后一个位置的方法;

findFirstCompletelyVisibleItemPosition(), findFirstVisibleItemPosition() : 可以获取屏幕中展示第一个item的position值

findLastCompletelyVisibleItemPosition(), findLastVisibleItemPosition(): 可以获取屏幕中展示最后一个item的position值

二、关于StaggeredGridLayoutManager获取当前屏幕第一个条目的位置或最后一个位置的方法;

StaggeredGridLayoutManager中的上面的那些方法,是需要传一个int[]数组的。所以应该这些写:

 

int[] mFirstVisibleItems = null;
mFirstVisibleItems = staggeredGridLayoutManager.findFirstVisibleItemPositions(mFirstVisibleItems);
//以下代码不需要,打印出来作为验证;
if(firstVisibleItems != null){
    for (int i = 0; i < firstVisibleItems.length; i++){
        LogUtils.i("====打印当前屏幕的第一第二个条目的position位置===" + mFirstVisibleItems[i]);
    }
}

int[]数组中,第一个索引的值就是当前屏幕显示的第一个条目position的位置;

本文标签: 目的第一个屏幕位置RecyclerView