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取消惯性滚动的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Android 获取时间实例代码

    Android 获取时间实例代码

    这篇文章主要介绍了Android 获取时间实例代码的相关资料,需要的朋友可以参考下
    2017-05-05
  • Android getevent用法实例详解

    Android getevent用法实例详解

    这篇文章主要介绍了Android getevent用法实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • Android 线程优化知识点学习

    Android 线程优化知识点学习

    这篇文章主要为大家介绍了Android线程优化知识点学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • Android中通过外部程序启动App的三种方法

    Android中通过外部程序启动App的三种方法

    这篇文章主要介绍了Android中通过外部程序启动App的三种方法,本文讲解了直接通过包名、通过自定义的Action、通过Scheme三种方法,并分别给出操作代码,需要的朋友可以参考下
    2015-04-04
  • 史上最全的Android build.gradle配置教程

    史上最全的Android build.gradle配置教程

    这篇文章主要给大家介绍了关于Android build.gradle配置的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • 详解Android中Activity的四大启动模式实验简述

    详解Android中Activity的四大启动模式实验简述

    本篇文章主要介绍了Android中Activity的四大启动模式实验简述,具有一定的参考价值,有兴趣的可以了解一下。
    2016-12-12
  • AndroidStudio升级4.1后启动失败Plugin问题解决

    AndroidStudio升级4.1后启动失败Plugin问题解决

    这篇文章主要介绍了AndroidStudio升级4.1后启动失败Plugin问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Android实现定制桌面的方法

    Android实现定制桌面的方法

    这篇文章主要介绍了Android实现定制桌面的方法,较为详细的分析了Android定制桌面的相关注意事项及具体技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • 图文详解Android Studio搭建Android集成开发环境的过程

    图文详解Android Studio搭建Android集成开发环境的过程

    这篇文章主要以图文的方式详细介绍了Android Studio搭建Android集成开发环境的过程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • Android集成腾讯X5实现文档浏览功能

    Android集成腾讯X5实现文档浏览功能

    Android内部没有控件来直接显示文档,跳转WPS或其他第三方文档App体验性不好,使用腾讯X5内核能很好的解决的这一问题这篇文章主要介绍了Android集成腾讯X5实现文档浏览功能,需要的朋友可以参考下
    2019-10-10

最新评论