mac
2024-05-15 cae6ff870b1e9f1278a8fa21ab1013e68569607a
app/src/main/java/com/hdl/photovoltaic/ui/newC/adapter/HouseListAdapter.java
@@ -8,6 +8,7 @@
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.content.res.AppCompatResources;
import androidx.recyclerview.widget.RecyclerView;
import com.hdl.photovoltaic.R;
@@ -24,7 +25,10 @@
    private Context mContext;
    private List<HouseIdBean> mList;
    public OnClickListener mOnClickListener;
    public OnMoveClickListener mOnMoveClickListener;
    public OnDelClickListener mOnDelClickListener;
    public OnItemClickListener mOnItemClickListener;
    public HouseListAdapter(Context context) {
        this.mContext = context;
@@ -43,18 +47,69 @@
        holder.homeNameTv.setText(houseIdBean.getHomeName().trim());
        holder.itemView.setTag(position);
        if (houseIdBean.isEdit()) {
        if (houseIdBean.isDelIcon()) {
            holder.houseDelIv.setVisibility(View.VISIBLE);
        } else {
            holder.houseDelIv.setVisibility(View.GONE);
        }
        if (houseIdBean.isMove()) {
            holder.homeMoveIv.setVisibility(View.VISIBLE);
        } else {
            holder.homeMoveIv.setVisibility(View.GONE);
        }
        if (!houseIdBean.isMove()) {
            holder.houseSelectIv.setVisibility(View.VISIBLE);
            holder.houseSelectIv.setBackground(null);
            holder.homeNameTv.setTextColor(mContext.getColor(R.color.text_E6000000));
            if (houseIdBean.isState_select()) {
                holder.homeNameTv.setTextColor(mContext.getColor(R.color.text_38C494));
                holder.houseSelectIv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.select));
            }
        } else {
            holder.homeNameTv.setTextColor(mContext.getColor(R.color.text_E6000000));
            holder.houseSelectIv.setVisibility(View.GONE);
        }
        //删除电站位置
        holder.houseDelIv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    if (mOnDelClickListener != null) {
                        mOnDelClickListener.onDelClick((int) holder.itemView.getTag(), houseIdBean);
                    }
                } catch (Exception ignored) {
                }
            }
        });
        //移动电站位置
        holder.homeMoveIv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    if (mOnClickListener != null) {
                        mOnClickListener.onMoveClick((int) holder.itemView.getTag(), houseIdBean);
                    if (mOnMoveClickListener != null) {
                        mOnMoveClickListener.onMoveClick((int) holder.itemView.getTag(), houseIdBean);
                    }
                } catch (Exception ignored) {
                }
            }
        });
        holder.itemView.setTag(position);//标记位置
        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    if (holder.houseSelectIv.getVisibility() == View.GONE) {
                        //选中图标组件隐藏的时候点击无效
                        return;
                    }
                    if (mOnItemClickListener != null) {
                        mOnItemClickListener.onItemClick((int) holder.itemView.getTag(), houseIdBean);
                    }
                } catch (Exception ignored) {
                }
@@ -81,26 +136,48 @@
    }
    public void setNoOnclickListener(OnClickListener onClickListener) {
        this.mOnClickListener = onClickListener;
    public void setMoveOnclickListener(OnMoveClickListener onMoveClickListener) {
        this.mOnMoveClickListener = onMoveClickListener;
    }
    public void setDelOnclickListener(OnDelClickListener onDelClickListener) {
        this.mOnDelClickListener = onDelClickListener;
    }
    public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
        this.mOnItemClickListener = onItemClickListener;
    }
    static class MyViewHolder extends RecyclerView.ViewHolder {
        public TextView homeNameTv;//住宅名称
        public ImageView homeMoveIv;//住宅图片
        public ImageView houseDelIv;//删除图标
        public ImageView homeMoveIv;//位置移动图标
        public ImageView houseSelectIv;//位置移动图标
        public MyViewHolder(@NonNull View itemView) {
            super(itemView);
            homeNameTv = itemView.findViewById(R.id.house_name_tv);
            houseDelIv = itemView.findViewById(R.id.house_del_iv);
            homeMoveIv = itemView.findViewById(R.id.house_move_iv);
            houseSelectIv = itemView.findViewById(R.id.house_select_iv);
        }
    }
    public interface OnClickListener {
    public interface OnMoveClickListener {
        void onMoveClick(int position, HouseIdBean houseIdBean);
    }
    public interface OnDelClickListener {
        void onDelClick(int position, HouseIdBean houseIdBean);
    }
    public interface OnItemClickListener {
        void onItemClick(int position, HouseIdBean houseIdBean);
    }
}