充电桩app代码

WaterFallAdapter.java 7.0KB

    package com.electric.chargingpile.adapter; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import com.aspsine.irecyclerview.IViewHolder; import com.electric.chargingpile.R; import com.electric.chargingpile.data.TalkRecommendBean; import com.electric.chargingpile.iview.RecyclerItemTypeClickListener; import com.electric.chargingpile.util.CircleTransform; import com.electric.chargingpile.util.ImageDisplayUtils; import com.electric.chargingpile.util.ScreenUtils; import com.squareup.picasso.Picasso; import java.util.ArrayList; public class WaterFallAdapter extends RecyclerView.Adapter<IViewHolder> { private Context context; private LayoutInflater LayoutInflater; private ArrayList<TalkRecommendBean> talkRecommendBeans; private ArrayList<TalkRecommendBean> talkHeaderRecommendBeans; private RecyclerItemTypeClickListener onRecyclerItemClickListener; private int screenWidth; public WaterFallAdapter(Context context) { this.context = context; LayoutInflater = LayoutInflater.from(context); talkRecommendBeans = new ArrayList<>(); talkHeaderRecommendBeans = new ArrayList<>(); screenWidth = ScreenUtils.getScreenWidth(context); } public void setData(ArrayList<TalkRecommendBean> datas) { talkRecommendBeans = datas; notifyDataSetChanged(); } public void addData(ArrayList<TalkRecommendBean> datas) { talkRecommendBeans.addAll(datas); notifyDataSetChanged(); } public ArrayList<TalkRecommendBean> getCurrentData() { return talkRecommendBeans; } public void setOnRecyclerItemClickListener(RecyclerItemTypeClickListener onRecyclerItemClickListener) { this.onRecyclerItemClickListener = onRecyclerItemClickListener; } @Override public int getItemCount() { // 加一是因为添加了头部 return talkRecommendBeans.size(); } @Override public IViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = null; IViewHolder holder = null; view = LayoutInflater.inflate(R.layout.app_talk_item_recylerview, parent, false); holder = new SimpleViewHolder(view); return holder; } @Override public void onBindViewHolder(IViewHolder holder, int position) { setListHolder(holder, position); } private void setListHolder(IViewHolder holder, int position) { SimpleViewHolder simpleViewHolder = (SimpleViewHolder) holder; RelativeLayout.LayoutParams lpImg = (RelativeLayout.LayoutParams) simpleViewHolder.info_bg_icon.getLayoutParams(); // LinearLayout.LayoutParams linearParams =(LinearLayout.LayoutParams) simpleViewHolder.user_avater.getLayoutParams(); //取控件textView当前的布局参数 linearParams.height = 20;// 控件的高强制设成20 if (position % 2 == 0) { lpImg.width = screenWidth / 2; lpImg.height = screenWidth * 2 / 3 - 100; simpleViewHolder.info_bg_icon.setLayoutParams(lpImg); } else { lpImg.width = screenWidth / 2; lpImg.height = screenWidth * 2 / 3; simpleViewHolder.info_bg_icon.setLayoutParams(lpImg); } TalkRecommendBean talkRecommendBean = talkRecommendBeans.get(position); simpleViewHolder.recycler_view_title.setText(talkRecommendBean.title); simpleViewHolder.recycler_view_zan.setText(talkRecommendBean.likeNums + ""); simpleViewHolder.user_avater_name.setText(talkRecommendBean.nickName); if (talkRecommendBean.isTop == 0) simpleViewHolder.is_top_view.setVisibility(View.GONE); else simpleViewHolder.is_top_view.setVisibility(View.VISIBLE); if (talkRecommendBean.targetType == 23) simpleViewHolder.info_id_video_icon.setVisibility(View.VISIBLE); else simpleViewHolder.info_id_video_icon.setVisibility(View.GONE); // Glide.with(context) // .load(talkRecommendBean.coverImgUrl) // .asBitmap()//强制Glide返回一个Bitmap对象 // .into(new Tram); ImageDisplayUtils.dispalyImg(context, talkRecommendBean.coverImgUrl, simpleViewHolder.info_bg_icon); // if (!TextUtils.isEmpty(talkRecommendBean.coverImgUrl)){ // Picasso.with(context).load(talkRecommendBean.coverImgUrl).into(simpleViewHolder.info_bg_icon); // } if (TextUtils.isEmpty(talkRecommendBean.headImgUrl)) { Picasso.with(context) .load(R.drawable.icon_face2_0) .placeholder(R.drawable.icon_face2_0) .error(R.drawable.icon_face2_0) .transform(new CircleTransform()) .into(simpleViewHolder.user_avater); } else { Picasso.with(context) .load(talkRecommendBean.headImgUrl) .placeholder(R.drawable.icon_face2_0) .error(R.drawable.icon_face2_0) .transform(new CircleTransform()) .into(simpleViewHolder.user_avater); } } class SimpleViewHolder extends IViewHolder { TextView recycler_view_title; TextView recycler_view_zan; TextView user_avater_name; TextView is_top_view; ImageView user_avater; ImageView info_bg_icon; ImageView info_id_video_icon; LinearLayout cardview; public SimpleViewHolder(View view) { super(view); recycler_view_title = (TextView) view.findViewById(R.id.recycler_view_title); user_avater_name = (TextView) view.findViewById(R.id.user_avater_name); is_top_view = (TextView) view.findViewById(R.id.is_top_view); recycler_view_zan = (TextView) view.findViewById(R.id.recycler_view_zan); user_avater = (ImageView) view.findViewById(R.id.user_avater); info_bg_icon = (ImageView) view.findViewById(R.id.info_bg_icon); info_id_video_icon = (ImageView) view.findViewById(R.id.info_id_video_icon); cardview = (LinearLayout) view.findViewById(R.id.cardview); RelativeLayout.LayoutParams lpImg = (RelativeLayout.LayoutParams) info_bg_icon.getLayoutParams(); lpImg.width = screenWidth / 2; lpImg.height = screenWidth * 2 / 3; info_bg_icon.setLayoutParams(lpImg); itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (onRecyclerItemClickListener != null) { onRecyclerItemClickListener.onItemClickListener(getLayoutPosition(), 1); } } }); } } }