现在大部分的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的滑动禁止
禁止滑动就这么简单,添加一个工具类加一行代码完成