Files
pdlivexp/FaceUnity/src/main/java/com/yunbao/faceunity/adapters/MenuGroupRecyclerAdapter.java

78 lines
2.1 KiB
Java

package com.yunbao.faceunity.adapters;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.yunbao.common.adapter.OnItemClickListener;
import com.yunbao.faceunity.R;
import com.yunbao.faceunity.entity.MenuGroupBean;
import java.util.List;
/**
* 主菜单适配器
*/
public class MenuGroupRecyclerAdapter extends RecyclerView.Adapter<MenuGroupRecyclerAdapter.Vh> {
private Context context;
private List<MenuGroupBean> list;
private OnItemClickListener onItemClickListener;
public MenuGroupRecyclerAdapter(Context context) {
this.context = context;
}
public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
this.onItemClickListener = onItemClickListener;
}
public void setList(List<MenuGroupBean> list) {
this.list = list;
}
@NonNull
@Override
public Vh onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new Vh(LayoutInflater.from(context).inflate(R.layout.list_item_menu_group, parent, false));
}
@Override
public void onBindViewHolder(@NonNull Vh holder, int position) {
holder.setData(list.get(position));
}
@Override
public int getItemCount() {
return list.size();
}
protected class Vh extends RecyclerView.ViewHolder {
ImageView icon;
TextView title;
public Vh(@NonNull View itemView) {
super(itemView);
icon = itemView.findViewById(R.id.item_icon);
title = itemView.findViewById(R.id.item_text);
itemView.setOnClickListener(v -> {
if (onItemClickListener != null) {
onItemClickListener.onItemClick(getAdapterPosition());
}
});
}
public void setData(MenuGroupBean menuGroupBean) {
icon.setImageResource(menuGroupBean.getIconId());
title.setText(menuGroupBean.getTitleId());
}
}
}