Java 如何在RecyclerView中处理单击事件

Java 如何在RecyclerView中处理单击事件,java,android,android-recyclerview,Java,Android,Android Recyclerview,我知道这个问题已经被问了100次,但我找不到任何与我的问题相关的答案,因为我是新来的,他们的代码完全不同。我正在将Firebase中的图像显示到RecyclerView中,当图像单击时,它必须像弹出窗口或在活动中一样打开图像 quote.java ViewHolder.java 您需要使用itemView viewHolder.itemView.setOnClickListener(new View.OnClickListener() { @Overr

我知道这个问题已经被问了100次,但我找不到任何与我的问题相关的答案,因为我是新来的,他们的代码完全不同。我正在将Firebase中的图像显示到RecyclerView中,当图像单击时,它必须像弹出窗口或在活动中一样打开图像

quote.java

ViewHolder.java


您需要使用itemView

viewHolder.itemView.setOnClickListener(new View.OnClickListener() {                
      @Override
      public void onClick(View v) {
          Toast.makeText(quote.this,"hello",Toast.LENGTH_LONG).show();
      }
});

如果您希望看到放大的图像,请在向下/向上滑动时关闭。您可以使用支持库,如Facebook上的Fresco。以下是实施指南: 或者,您可以使用一些使壁画更易于使用的壁画包装,例如:

因此,通过使用湿壁画,您可以这样做,图像将以全屏或自定义大小显示:

viewHolder.itemView.setOnClickListener(new View.OnClickListener() {                
  @Override
  public void onClick(View v) {
      Uri uri = Uri.parse("image url here");
      draweeView.setImageURI(uri);
   }
});
您可以将库用作缩放图像视图的活动。 对于平滑过渡,请使用过渡动画指南

  ViewHolder.ImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                itemListener.recyclerViewListClicked(view, position);
            }
        });

设置/调用Adapter和OnBindviewHolder时,从片段或活动向适配器构造函数发送接口上下文或回调,将数据设置为接口函数,并在活动或片段中实现这些函数,以便在单击时访问数据

是否要实现单击ImageView或RecyclerView项?@Yupi抱歉,我无法获取你我在循环视图中显示图像和文本,当用户点击时,它必须打开以查看更大的图像。如何实现?任何有用的链接都会很棒!它起作用了吗?你想实现点击图像或项目吗?对不起,我可以区分它们,点击图像我想是的。因为用户需要在全视图中查看图像@Zuhranii有超过100多张图片是可行的。每一张图片都像一张图片一样打开,然后你就可以让它左右滑动来移动下一张图片,基本上是Facebooks的图片预览。
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {                
      @Override
      public void onClick(View v) {
          Toast.makeText(quote.this,"hello",Toast.LENGTH_LONG).show();
      }
});
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {                
  @Override
  public void onClick(View v) {
      Uri uri = Uri.parse("image url here");
      draweeView.setImageURI(uri);
   }
});
mImageTv.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View view) {
                                // Do open image zoom activity
                            }
                        });
  ViewHolder.ImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                itemListener.recyclerViewListClicked(view, position);
            }
        });