通过layoutmanager的findviewbyposition查找firstvisibleview和lastvisibleview之后取到left和right之后计算下就得出来了。
注意不要用getchild取view,一定要用layoutmanager的findviewbyposition取。
LayoutManager用的是LinearLayoutManager 可以用下面的办法:
已滑动的距离:
jQuery获取的相关方法
jquery 获取滚动条高度获取浏览器显示区域的高度 :
$(window)height();
获取浏览器显示区域的宽度 :
$(window)width();
获取页面的文档高度 :
$(document)height();
获取页面的文档宽度 :$(document)width();
获取滚动条到顶部的垂直高度 :
$(document)scrollTop();
获取滚动条到左边的垂直宽度 :
$(document)scrollLeft();
计算元素位置和偏移量:
$(id)offset();
offset方法是一个很有用的方法,它返回包装集中第一个元素的偏移信息。默认情况下是相对body的偏移信息。结果包含 top和left两个属性。
offset(options, results)
optionsrelativeTo指定相对计
算偏移位置的祖先元素。这个元素应该是relative或absolute定位。省略则相对body。
optionsscroll是否把
滚动条计算在内,默认TRUE
optionspadding是否把padding计算在内,默认false
optionsmargin
是否把margin计算在内,默认true
optionsborder是否把边框计算在内,默认true
使用js获取的相关方法
//回到页面顶部$("#goTotop")click(function(){
$('body,html')animate({scrollTop:0},1500); //点击按钮让其回到页面顶部
});
$(window)scroll(function() {
var yheight1=windowpageYOffset; //滚动条距顶端的距离
var yheight=getScrollTop(); //滚动条距顶端的距离
var height =documentdocumentElementclientHeight//浏览器可视化窗口的大小
var top=parseInt(yheight)+parseInt(height)-217;
var divobj=$("kf");
divobjattr('style','top:'+top+'px;');
})
/
获取滚动条距离顶端的距离
@return {}支持IE6
/
function getScrollTop() {
var scrollPos;
if (windowpageYOffset) {
scrollPos = windowpageYOffset; }
else if (documentcompatMode && documentcompatMode != 'BackCompat')
{ scrollPos = documentdocumentElementscrollTop; }
else if (documentbody) { scrollPos = documentbodyscrollTop; }
return scrollPos;
}
$(document)scrollTop() 获取垂直滚动的距离 即当前滚动的地方的窗口顶端到整个页面顶端的距离
$(document)scrollLeft() 这是获取水平滚动条的距离!
在与scrollview同级建个和中部标签选卡一样的布局,开始的时候设置成隐藏ViewGONE,当scrollview滚动到中部位置的时候让它显示出来就OK了,当小于中部位置时再把它隐藏。我就这么做的,不过我当时不是scrollview而是ListView
你其实可以这样实现,在与scrollview同级建个和中部标签选卡一样的布局,开始的时候设置成隐藏ViewGONE,当scrollview滚动到中部位置的时候让它显示出来就OK了,当小于中部位置时再把它隐藏。我就这么做的,不过我当时不是scrollview而是ListView
以上就是关于如何获取Android RecyclerView滑动的距离全部的内容,包括:如何获取Android RecyclerView滑动的距离、在js中怎么设置滚动条滚动的距离、没有滚动条怎么判断页面的滚动距离等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)