Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用Llbrary Glide时显示吐司_Android_Android Recyclerview_Toast - Fatal编程技术网

Android 使用Llbrary Glide时显示吐司

Android 使用Llbrary Glide时显示吐司,android,android-recyclerview,toast,Android,Android Recyclerview,Toast,我想使用RecyclerView并使用Library Glide显示图像 public void onBindViewHolder(CustomViewHolder holder, int position) { Sisop current = sisop.get(position); holder.namaItemView.setText(current.nama); Glide.with(context) .load(sisop.get(po

我想使用RecyclerView并使用Library Glide显示图像

 public void onBindViewHolder(CustomViewHolder holder, int position) {
    Sisop current = sisop.get(position);
    holder.namaItemView.setText(current.nama);
    Glide.with(context)
            .load(sisop.get(position).gambar)
            .placeholder(R.mipmap.ic_launcher)
            .into(holder.img_icon);
}

如果单击时图像将显示包含所单击项目名称的toast,该怎么办?

尝试将此设置
ClickListener
设置为您的
持有者。img_图标
如下

public void onBindViewHolder(CustomViewHolder holder, int position) {
    Sisop current = sisop.get(position);
    holder.namaItemView.setText(current.nama);
    Glide.with(context)
            .load(sisop.get(position).gambar)
            .placeholder(R.mipmap.ic_launcher)
            .into(holder.img_icon);
      holder.img_icon.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(view.getContext(),sisop.get(position).gambar +" is Clicked", Toast.LENGTH_SHORT).show();
            }
        });
}
根据@v-rund-puro-hit的建议更新

class YourViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        ImageView img_icon;
        public CustomViewHolder(View itemView) {
            super(itemView);
            img_icon = (ImageView) itemView.findViewById(R.id.img_icon);
            img_icon.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            if(view.getId() == R.id.img_icon){
                Toast.makeText(view.getContext(), sisop.get(getAdapterPosition()).nama+" is Clicked", Toast.LENGTH_SHORT).show();
            }
        }
    }

试试这套
点击你的
支架上的监听器。img\u图标如下

public void onBindViewHolder(CustomViewHolder holder, int position) {
    Sisop current = sisop.get(position);
    holder.namaItemView.setText(current.nama);
    Glide.with(context)
            .load(sisop.get(position).gambar)
            .placeholder(R.mipmap.ic_launcher)
            .into(holder.img_icon);
      holder.img_icon.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(view.getContext(),sisop.get(position).gambar +" is Clicked", Toast.LENGTH_SHORT).show();
            }
        });
}
根据@v-rund-puro-hit的建议更新

class YourViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        ImageView img_icon;
        public CustomViewHolder(View itemView) {
            super(itemView);
            img_icon = (ImageView) itemView.findViewById(R.id.img_icon);
            img_icon.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            if(view.getId() == R.id.img_icon){
                Toast.makeText(view.getContext(), sisop.get(getAdapterPosition()).nama+" is Clicked", Toast.LENGTH_SHORT).show();
            }
        }
    }

我认为这个问题实际上与glide无关,这是如何在视图上设置onclick listener的

class CustomViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        ImageView img_icon;
        public CustomViewHolder(View itemView) {
            super(itemView);
            img_icon = (ImageView) itemView.findViewById(R.id.img_icon);
            img_icon.setOnClickListener(this);
        }

        @Override
        public void onClick(View v) {
            if(v.getId() == R.id.img_icon){
                Toast.makeText(v.getContext(), sisop.get(getAdapterPosition()).nama, Toast.LENGTH_SHORT).show();
            }
        }
    }

我认为这个问题实际上与glide无关,这是如何在视图上设置onclick listener的

class CustomViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        ImageView img_icon;
        public CustomViewHolder(View itemView) {
            super(itemView);
            img_icon = (ImageView) itemView.findViewById(R.id.img_icon);
            img_icon.setOnClickListener(this);
        }

        @Override
        public void onClick(View v) {
            if(v.getId() == R.id.img_icon){
                Toast.makeText(v.getContext(), sisop.get(getAdapterPosition()).nama, Toast.LENGTH_SHORT).show();
            }
        }
    }

发生了什么事!设置图像视图的点击监听器未获得结果?@MohitSuthar我不知道如何使用Glide Library查看@Pem的图像的点击监听器answer@Yugo检查我下面的答案,看看发生了什么!设置图像视图的点击监听器未获得结果?@MohitSuthar我不知道如何使用Glide Library查看@Pem的图像的点击监听器answer@Yugo检查我下面的回答:在BindViewHolder内设置click listener
onBindViewHolder
不是一个好的做法。@V-rundPuro-hit是的,你是对的,但我认为他只需要
toast
这就是我写这封信的原因。非常感谢你的支持guidance@Prem是的,我无法在BindViewHolder、MainActivity.this和position中设置click listenerred@Yugo改为使用
getApplicationContext()
。@Yugo试试这个
Toast.makeText(view.getContext(),sisop.get(position).gambar+“被点击”,Toast.LENGTH\u SHORT.show()设置BindViewHolder内的click listener
onBindViewHolder
不是一个好做法。@V-rundPuro-hit是的,你是对的,但我认为他只需要
敬酒
,这就是为什么我把这个放在这里,非常感谢你的支持guidance@Prem是的,我不能在BindViewHolder中设置click listener,主要活动。此活动和位置正在进行red@Yugo改为使用
getApplicationContext()
。@Yugo试试这个
Toast.makeText(view.getContext(),sisop.get(position).gambar+“被点击”,Toast.LENGTH\u SHORT.show()