ViewPager+Fragment的实现及禁止滑动

现在大部分的APP都都大致分为好几个模块,这就用到了viewpager+fragment来实现这样的效果,下面咱们就一起来实现一下这样的效果;

setCurrentItem(0,false); //去掉点击按钮时的滚动效果 加上false

一、禁止fragment的滑动 

有的APP是不让fragment滑动的(Android版的微信可以滑动),下面就来操作一下如何让fragment禁止滑动 

1、在项目里面添加工具类:

package com.youli.bluetooth_glasses.utils;

import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.content.Context;
  import android.support.v4.view.ViewPager;
  import android.util.AttributeSet;
  import android.view.MotionEvent;

/**
 * Created by liutao on 2018/6/28.
 */


public class NoScrollViewPager extends ViewPager {
    private boolean isCanScroll = true;

             public NoScrollViewPager(Context context) {
                 super(context);
             }

             public NoScrollViewPager(Context context, AttributeSet attrs) {
                 super(context, attrs);
             }

            public void setScanScroll(boolean isCanScroll) {
                this.isCanScroll = isCanScroll;
             }

             @Override
     public void scrollTo(int x, int y) {
                     super.scrollTo(x, y);
            }

             @Override
     public boolean onTouchEvent(MotionEvent arg0) {
                 // TODO Auto-generated method stub
                 return false;//super.onTouchEvent(arg0);
             }

             @Override
     public void setCurrentItem(int item, boolean smoothScroll) {
                 // TODO Auto-generated method stub
                 super.setCurrentItem(item, smoothScroll);
             }

             @Override
     public void setCurrentItem(int item) {
                 // TODO Auto-generated method stub
                 super.setCurrentItem(item);
             }
 }

2、在布局里面将viewpager控件替换成工具类的类路径名 

这里写图片描述 

3、最后一步就是在用到的类里面添加一行代码实现fragment的滑动禁止 

这里写图片描述

禁止滑动就这么简单,添加一个工具类加一行代码完成 


猜你喜欢

转载自blog.csdn.net/hdhhd/article/details/80844104