Fragment中监听和拦截点击MotionEvent事件

由于Fragment中没有dispatchTouchEvent()方法和onTouchEvent()方法对事件进行分发和处理,所以如果想要在Fragment中拦截点击事件的话可以这样做:

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
   
        super.onViewCreated(view, savedInstanceState)
        view.setOnTouchListener {
    v, event ->  
            //在这里面拦截点击事件,并进行相应的操作
            
            true
        }
    }

如果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 ViewPager2 Fragment 使用 RecyclerView,并且想要为 RecyclerView 的项(item)设置点击事件,你可以按照以下步骤进行操作: 1. 创建一个自定义的 RecyclerView.Adapter,继承自 RecyclerView.Adapter<ViewHolder>。 2. 在 ViewHolder 为 RecyclerView 的项设置点击事件。你可以通过在 ViewHolder 的构造函数为项的根布局设置点击监听器来实现这一点。例如: ```java public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { // ... public static class ViewHolder extends RecyclerView.ViewHolder { public View itemView; public ViewHolder(View itemView) { super(itemView); this.itemView = itemView; // 设置点击事件 itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 处理点击事件 int position = getAdapterPosition(); // TODO: 处理点击事件逻辑 } }); } } // ... } ``` 3. 在 Fragment 的 onCreateView 方法,创建并设置 RecyclerView 和适配器。例如: ```java public class MyFragment extends Fragment { private RecyclerView recyclerView; private MyAdapter adapter; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_layout, container, false); recyclerView = view.findViewById(R.id.recycler_view); // 设置布局管理器 recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); // 创建适配器实例 adapter = new MyAdapter(); // 设置适配器 recyclerView.setAdapter(adapter); return view; } } ``` 通过以上步骤,你就可以在 ViewPager2 Fragment 为 RecyclerView 的项设置点击事件了。你可以在 ViewHolder 的点击监听处理点击事件的逻辑。记得在适配器进行数据绑定,并根据点击的项进行相应的处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值