获取Gridview从开始到结束所经过的距离,滑动结束后调用
private int getScrollOffset(){
//GridView行间距
int mVerticalSpacing = your-vertical-spacing-in-dp;
//item 偏移量
int mOffset = mVerticalSpacing;
//正值表示向上滑动,负值表示向下滑动
//mScrollRows--滑动前后经过的行数
//mOldFirstVisiblePosition--滑动前所显示的第一个item位置
//numColumns--GridView 列数
int mScrollRows = (your-gridview.getFirstVisiblePosition()-mOldFirstVisiblePosition)/numColumns;
//当前显示的第一个item
View mFirstItem = container.getChildAt(0);
//item高度
int mItemHeight = mFirstItem.getHeight;
if(null!=mFirstItem){
mOffset -= mFirstItem.getTop();
}
return mScrollRows*mItemHeight+mOffset;
}
网友评论