Recyclerview - cardview onclick 更改图像?
Recyclerview - cardview onclick change image?
我有一个应用程序作为 Recyclerview --> Cardview,在 cardvie 中我有文本和图像,我想做的是点击更改
卡片视图的图像;
这是处理卡片视图点击的代码;
有没有办法在点击时更改 img,recyclerview 有大约 20 个 cardviews。
Activity
@Override
public void onItemClick(int position) {
myAdapter click = myList.get(position);
String name = click.getName();
Log.e(TAG, "Position: " + position);
}
适配器
public class ViewHolder2 extends RecyclerView.ViewHolder {
public TextView fId;
public TextView fName;
public ImageView fImageButton;
public ViewHolder2(@NonNull View itemView) {
super(itemView);
fId = itemView.findViewById(R.id.id);
fName = itemView.findViewById(R.id.name);
fImageButton = itemView.findViewById(R.id.micd_item_icon);
itemView.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
int position = getAdapterPosition();
if (position != RecyclerView.NO_POSITION) {
fListener.onItemClick(position);
Log.e(TAG, "D");
}
}
});
}
}
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
myAdapter currentItem = myList.get(position);
String id = currentItem.getfId();
String name = currentItem.getfName();
holder.fId.setText(id);
holder.fName.setText(name);
holder.fImageButton.setImageResource(R.drawable.ic_cloud_download);
}
在您的布局中为您的 CardView
提供 ID。
在您的 ViewHolder
中拨打 findViewById()
电话。
在 RecyclerView.Adapter
的 onBindViewHolder
中,将 OnClickListener
设置为 CardView
。
在此CardView
的onClick(View v)
中,将图像设置为ImageView。
//如果你从列表中加载图像
Glide.with(上下文).load(list.get(位置).getImageUrl()).into(holder.imageView);
//如果你只想从你的可绘制对象中设置一个图像
holder.imageView.setImageResource(context.getResources().getDrawable(R.drawable.icon));
我无法正确格式化上述内容,因为编辑器因某些原因对我来说出现问题。
欢迎编辑。
我有一个应用程序作为 Recyclerview --> Cardview,在 cardvie 中我有文本和图像,我想做的是点击更改 卡片视图的图像;
这是处理卡片视图点击的代码; 有没有办法在点击时更改 img,recyclerview 有大约 20 个 cardviews。
Activity
@Override
public void onItemClick(int position) {
myAdapter click = myList.get(position);
String name = click.getName();
Log.e(TAG, "Position: " + position);
}
适配器
public class ViewHolder2 extends RecyclerView.ViewHolder {
public TextView fId;
public TextView fName;
public ImageView fImageButton;
public ViewHolder2(@NonNull View itemView) {
super(itemView);
fId = itemView.findViewById(R.id.id);
fName = itemView.findViewById(R.id.name);
fImageButton = itemView.findViewById(R.id.micd_item_icon);
itemView.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
int position = getAdapterPosition();
if (position != RecyclerView.NO_POSITION) {
fListener.onItemClick(position);
Log.e(TAG, "D");
}
}
});
}
}
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
myAdapter currentItem = myList.get(position);
String id = currentItem.getfId();
String name = currentItem.getfName();
holder.fId.setText(id);
holder.fName.setText(name);
holder.fImageButton.setImageResource(R.drawable.ic_cloud_download);
}
在您的布局中为您的
CardView
提供 ID。在您的
ViewHolder
中拨打findViewById()
电话。在
RecyclerView.Adapter
的onBindViewHolder
中,将OnClickListener
设置为CardView
。在此
CardView
的onClick(View v)
中,将图像设置为ImageView。//如果你从列表中加载图像 Glide.with(上下文).load(list.get(位置).getImageUrl()).into(holder.imageView);
//如果你只想从你的可绘制对象中设置一个图像 holder.imageView.setImageResource(context.getResources().getDrawable(R.drawable.icon));
我无法正确格式化上述内容,因为编辑器因某些原因对我来说出现问题。
欢迎编辑。