ViewPager其实是一个非常好的控件、控件容器。

而且ViewPager的滑动效果其实非常好,但是偶尔应用的需求会需要禁止它的滑动。

本人的一个项目中就遇到了,主要原因是ViewPager的View中有一个加载了ListView控件,而ListView是自定义的Item可滑动的控件,所以左右滑动效果冲突了。那么就需要禁止ViewPager的滑动效果来迁就ListView,因为ViewPager可以使用点击来完成,而ListView的滑动效果更佳。

好了,介绍方法,好了不用介绍了,直接上代码吧。

1. 自定义ViewPager,

package com.gopain.TYT.beans;import android.content.Context;import android.support.v4.view.ViewPager;import android.util.AttributeSet;import android.view.MotionEvent;public class MyViewPager extends ViewPager {private boolean scroll = true;public MyViewPager(Context context) {super(context);}public MyViewPager(Context context, AttributeSet attrs) {super(context, attrs);}public void setScroll(boolean scroll) {this.scroll = scroll;}@Overridepublic void scrollTo(int x, int y) {super.scrollTo(x, y);}@Overridepublic boolean onTouchEvent(MotionEvent arg0) {/*return false;//super.onTouchEvent(arg0);*/if(scroll)return false;elsereturn super.onTouchEvent(arg0);}@Overridepublic boolean onInterceptTouchEvent(MotionEvent arg0) {if(scroll)return false;elsereturn super.onInterceptTouchEvent(arg0);}@Overridepublic void setCurrentItem(int item, boolean smoothScroll) {super.setCurrentItem(item, smoothScroll);}@Overridepublic void setCurrentItem(int item) {super.setCurrentItem(item);}}

不用修改,直接拿去用吧,因为ViewPager的功能没有改变,只是修改了一个滑动效果,完全不会影响控件的其它功能。

那么使用的时候java调用代码、适配器什么的都不会变。

只是在xml定义布局时需要修改,如

        

好了,其它的都不会变的,放心使用吧!

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. Android中的4.0新布局控件:Space和GridLayout
  3. 热门Android(安卓)Studio 插件,这里是Top 20!
  4. Android(安卓)Data Binding简单示例
  5. Android应用实例(一)之---有道辞典VZ.0
  6. Android(安卓)使用Intent传递数据的实现思路与代码
  7. 自定义控件(一)
  8. Android引导界面设计之ParallaxViewPager视差效果
  9. repo 和 git 管理源代码

随机推荐

  1. Android平台中进程与线程的基本知识
  2. Android面试经验一:
  3. Android手势源码浅析-----手势绘制(Gestu
  4. android orm映射框架 ormlite (类似于hib
  5. 【Android(安卓)Training - UserInfo】记
  6. android手机定位不准的问题
  7. Android休眠机制
  8. 关于启动Android模拟器时,运行时,会再弹出
  9. Android虚拟平台的编译和整合
  10. Android(安卓)以图找图功能