Android ScrollView取消惯性滚动的方法
更新时间:2017年04月13日 10:12:23 投稿:jingxian
下面小编就为大家带来一篇Android ScrollView取消惯性滚动的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
ScrollView中惯性滚动的效果,想让这个ScrollView慢一点滑动或者接近drag(拖拽)操作,就提出了添加阻尼的说法。只要重新fling方法即可,将velocity值极至缩小。
实例如下:
public class CustomHorizontalScrollView extends HorizontalScrollView { private Context context; private ScrollViewListenner listenner; private CustomHorizontalScrollView currentView; public CustomHorizontalScrollView(Context context) { super(context); // TODO Auto-generated constructor stub this.context = context; } public CustomHorizontalScrollView(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub this.context = context; } public CustomHorizontalScrollView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); // TODO Auto-generated constructor stub this.context = context; } @Override public boolean onTouchEvent(MotionEvent ev) { // TODO Auto-generated method stub currentView = this; return super.onTouchEvent(ev); } @Override protected void onScrollChanged(int l, int t, int oldl, int oldt) { // TODO Auto-generated method stub if (null != listenner) { this.listenner.onScrollChanged(currentView, l, t, oldl, oldt); } super.onScrollChanged(l, t, oldl, oldt); } public interface ScrollViewListenner { public void onScrollChanged(CustomHorizontalScrollView view, int l, int t, int oldl, int oldt); } public void setScrollViewListenner(ScrollViewListenner listenner) { this.listenner = listenner; } /** * *阻尼:1000为将惯性滚动速度缩小1000倍,近似drag操作。 @Override public void fling(int velocity) { super.fling(velocity / 1000); } */ }
以上这篇Android ScrollView取消惯性滚动的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
AndroidStudio升级4.1后启动失败Plugin问题解决
这篇文章主要介绍了AndroidStudio升级4.1后启动失败Plugin问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-10-10图文详解Android Studio搭建Android集成开发环境的过程
这篇文章主要以图文的方式详细介绍了Android Studio搭建Android集成开发环境的过程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2015-12-12
最新评论