本人是个新手,因为最近用到点击底部按钮切换VIewPager,所以就想让ViewPager只能点击切换,不能滑动切换,查了点资料,就写了以下代
使用如下:
原来的布局写法如下
改为:
把v4包的viewpager改为自己包的NoScrollViewPager
最后记着要把你的findviewbyid的数据类型由 ViewPager 改为 NoScrollViewPager
运行,发现已经不能滑动了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
//写一个类NoScrollViewPager 继承ViewPager
public
class
NoScrollViewPager
extends
ViewPager {
//此处要重写两个参数的构造方法
public
NoScrollViewPager(Context context, AttributeSet attrs) {
super
(context, attrs);
}
//重写两个下面方法
//是否拦截此事件的方法(因为不需要拦截滑动事件,直接返回false即可)
@Override
public
boolean
onInterceptTouchEvent(MotionEvent ev) {
return
false
;
}
//是否响应此事件的方法(即使事件回传给viewpager,viewpager依然不响应)
@Override
public
boolean
onTouchEvent(MotionEvent ev) {
return
false
;
}
}
|
使用如下:
原来的布局写法如下
1
2
3
4
5
|
<android.support.v4.view.ViewPager
android:id=
"@+id/vp_content"
android:layout_width=
"match_parent"
android:layout_height=
"20dp"
>
</android.support.v4.view.ViewPager>
|
改为:
把v4包的viewpager改为自己包的NoScrollViewPager
1
2
3
4
5
|
<com.example.zhihuibj.ui.NoScrollViewPager
android:id=
"@+id/vp_content"
android:layout_width=
"match_parent"
android:layout_height=
"20dp"
>
</com.example.zhihuibj.ui.NoScrollViewPager>
|
最后记着要把你的findviewbyid的数据类型由 ViewPager 改为 NoScrollViewPager
运行,发现已经不能滑动了