ViewPager 如何禁用左右滑动
时间: 2023-12-03 12:43:19 浏览: 42
可以通过自定义 ViewPager 来禁用左右滑动。具体实现方法如下:
1. 自定义一个 NoScrollViewPager 类,继承自 ViewPager。
2. 重写 NoScrollViewPager 的 onInterceptTouchEvent 和 onTouchEvent 方法,使其返回 false,即不拦截触摸事件和不处理触摸事件。
代码示例:
```java
public class NoScrollViewPager extends ViewPager {
public NoScrollViewPager(Context context) {
super(context);
}
public NoScrollViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
// 禁止拦截触摸事件,使子 View 可以处理触摸事件
return false;
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
// 不处理触摸事件,使子 View 可以处理触摸事件
return false;
}
}
```
3. 在布局文件中使用 NoScrollViewPager 替换原来的 ViewPager。
```xml
<com.example.NoScrollViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
```
这样就可以禁用 ViewPager 的左右滑动了。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)