android 如何使用itemview OnClickListener从图库中获取图像

o7jaxewo  于 2022-12-02  发布在  Android
关注(0)|答案(1)|浏览(213)
holder.itemView.setOnClickListener(new View.OnClickListener() {
    
    @Override
    public void onClick(View view) {

//
    }
});

现在,无法使用startActivityForResult。
我必须使用启动器,但我不知道该怎么做,因为这是在项目视图中发生的单击事件,我将把图像放在项目视图中
我尝试了各种方法,但都是为了活动,所以都不起作用。

o2g1uqev

o2g1uqev1#

您需要将上下文强制转换为Activity,或者将onClickListener传递给适配器,如下所示
1.创建clickListener

public interface MyClickListener {
    void onItemClick(MyModel model);
}

1.在适配器类中:

public class MyAdapter extends RecyclerView.Adapter<ViewHolder> {
  private MyClickListener onClickListener;
  public MyAdapter(MyClickListener onClickListener) {
      this.onClickListener = onClickListener;
  }
  ...
}

1.在您的方法中:

holder.itemView.setOnClickListener(new View.OnClickListener() {

     @Override
     public void onClick(View view) {
         onClickListener.onItemClick(myModel);
     }
 });

1.在您的活动中:

MyAdapter adapter = new MyAdapter(new MyClickListener() {
     public void onItemClick(MyModel model) {
            /// here you can call startActivityForResult
     }
});

相关问题