Files
yusheng-android/MainModule/src/main/java/com/xscm/modulemain/adapter/CarouselBannerAdapter.java
2025-11-07 09:22:39 +08:00

78 lines
3.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.xscm.modulemain.adapter;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.xscm.modulemain.R;
import com.xscm.moduleutil.bean.TopRoom;
import com.xscm.moduleutil.utils.ImageUtils;
import com.zhpan.bannerview.BaseBannerAdapter;
import com.zhpan.bannerview.BaseViewHolder;
public class CarouselBannerAdapter extends BaseBannerAdapter<TopRoom> {
private OnItemClickListener onItemClickListener;
public void setOnItemClickListener(OnItemClickListener listener) {
this.onItemClickListener = listener;
}
@Override
protected void bindData(BaseViewHolder<TopRoom> holder, TopRoom data, int position, int pageSize) {
ImageUtils.loadHeadCC(data.getRoom_cover(), holder.itemView.findViewById(R.id.iv_follow_bg));
TextView textView= holder.itemView.findViewById(R.id.tv_num);
TextView textView2= holder.itemView.findViewById(R.id.tv_room_name);
textView.setText(data.getUser_list().size()+"");
textView2.setText(data.getRoom_name());
ImageView iv = holder.itemView.findViewById(R.id.iv_play);
ImageUtils.loadRes(com.xscm.moduleutil.R.drawable.voice_play, iv);
// List<TopRoom.UserList> user_list = data.getUser_list();
// if (user_list!= null && user_list.size() > 0) {
// RecyclerView recyclerView = holder.itemView.findViewById(R.id.rv_tags);
// recyclerView.setLayoutManager(new LinearLayoutManager(holder.itemView.getContext(), LinearLayoutManager.HORIZONTAL, false));
//
// // 设置item之间的间隔为负值实现重叠效果
// if (recyclerView.getItemDecorationCount() == 0) {
// recyclerView.addItemDecoration(new RecyclerView.ItemDecoration() {
// @Override
// public void getItemOffsets(@NonNull Rect outRect, @NonNull View view,
// @NonNull RecyclerView parent, @NonNull RecyclerView.State state) {
// super.getItemOffsets(outRect, view, parent, state);
// // 设置负间距实现重叠效果,根据需要调整数值
// outRect.left = -dpToPx(holder.itemView.getContext(), 8); // 重叠8dp
// }
//
// private int dpToPx(Context context, int dp) {
// return (int) TypedValue.applyDimension(
// TypedValue.COMPLEX_UNIT_DIP, dp,
// context.getResources().getDisplayMetrics());
// }
// });
// }
//
// CarouselImgAdapter adapter = new CarouselImgAdapter();
//
// // 创建最多包含3个元素的子列表
// int endIndex = Math.min(user_list.size(), 3);
// adapter.setNewData(user_list.subList(0, endIndex));
// recyclerView.setAdapter(adapter);
// }
// 设置点击事件
holder.itemView.setOnClickListener(v -> {
if (onItemClickListener != null) {
onItemClickListener.onItemClick(holder.itemView, data, position);
}
});
}
public interface OnItemClickListener {
void onItemClick(View view, TopRoom data, int position);
}
@Override
public int getLayoutId(int viewType) {
return R.layout.index_item_carousel;
}
}