禁掉ViewPager2的左右滑动

通过设置ViewPager2的`setUserInputEnabled(false)`方法,可以禁止用户通过手势进行左右滑动切换页面。这在某些情况下,如只允许程序逻辑控制页面切换时非常有用。

禁掉ViewPager2的左右滑动:

mViewPager2.setUserInputEnabled(false);
viewPager2.setUserInputEnabled(false);
使用ViewPager2实现左右滑动图片,可按以下步骤操作: ### 1. 添加依赖 在项目的`build.gradle`文件中添加ViewPager2的依赖: ```groovy implementation 'androidx.viewpager2:viewpager2:1.1.0' ``` ### 2. 布局文件 在`activity_main.xml`中添加ViewPager2: ```xml <androidx.viewpager2.widget.ViewPager2 android:id="@+id/viewPager2" android:layout_width="match_parent" android:layout_height="match_parent" /> ``` ### 3. 创建Adapter 创建一个继承自`RecyclerView.Adapter`的适配器,用于为ViewPager2提供图片数据: ```java import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import java.util.List; public class ImageAdapter extends RecyclerView.Adapter<ImageAdapter.ImageViewHolder> { private List<Integer> imageList; public ImageAdapter(List<Integer> imageList) { this.imageList = imageList; } @NonNull @Override public ImageViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(android.R.layout.simple_list_item_1, parent, false); return new ImageViewHolder(view); } @Override public void onBindViewHolder(@NonNull ImageViewHolder holder, int position) { holder.imageView.setImageResource(imageList.get(position)); } @Override public int getItemCount() { return imageList.size(); } public static class ImageViewHolder extends RecyclerView.ViewHolder { ImageView imageView; public ImageViewHolder(@NonNull View itemView) { super(itemView); imageView = itemView.findViewById(android.R.id.text1); } } } ``` ### 4. 设置ViewPager2 在Activity中设置ViewPager2的适配器: ```java import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager2.widget.ViewPager2; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ViewPager2 viewPager2 = findViewById(R.id.viewPager2); List<Integer> imageList = new ArrayList<>(); // 添加图片资源 imageList.add(R.drawable.image1); imageList.add(R.drawable.image2); ImageAdapter adapter = new ImageAdapter(imageList); viewPager2.setAdapter(adapter); } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张海龙(Jason Zhang)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值