From 12d6db5780d8a2121a3bef2d58bf897b24ff552a Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 12 六月 2024 15:54:29 +0800
Subject: [PATCH] Merge branch 'dev'
---
app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java | 149 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 149 insertions(+), 0 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java
new file mode 100644
index 0000000..7552f2d
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/SearchDeviceAdapter.java
@@ -0,0 +1,149 @@
+package com.hdl.photovoltaic.ui.adapter;
+
+import android.content.Context;
+import android.graphics.drawable.Drawable;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.appcompat.content.res.AppCompatResources;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class SearchDeviceAdapter extends RecyclerView.Adapter<SearchDeviceAdapter.MyViewHolder> {
+ List<CloudInverterDeviceBean> mList;
+
+ Context mContext;
+
+ DeviceInfoAdapter.OnClickListener mOnclickListener;
+
+ public SearchDeviceAdapter(Context context) {
+
+ this.mContext = context;
+ }
+
+ @NonNull
+ @Override
+ public SearchDeviceAdapter.MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+ View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_search_device, parent, false);
+ return new MyViewHolder(view);
+ }
+
+ @Override
+ public void onBindViewHolder(@NonNull SearchDeviceAdapter.MyViewHolder holder, int position) {
+ CloudInverterDeviceBean deviceBean = this.mList.get(position);
+
+ holder.device_search_name_tv.setText(deviceBean.getHomeNameAndDeviceName());
+ holder.device_search_sn_tv.setText("SN:"+deviceBean.getOsn());
+ holder.device_search_location_tv.setText(deviceBean.getHomeAddress());
+ setTextViewStyle(holder.device_search_state_tv, deviceBean.getDeviceStatus());
+ holder.itemView.setTag(position);
+ holder.itemView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ try {
+ if (mOnclickListener != null) {
+ mOnclickListener.onClick((int) holder.itemView.getTag(), deviceBean);
+ }
+ } catch (Exception ignored) {
+ }
+ }
+ });
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return this.mList == null ? 0 : this.mList.size();
+ }
+
+ public void setOnclickListener(DeviceInfoAdapter.OnClickListener onClickListener) {
+ this.mOnclickListener = onClickListener;
+ }
+
+ public void setList(List<CloudInverterDeviceBean> newData) {
+ if (this.mList == null) {
+ this.mList = new ArrayList<>();
+ } else {
+ this.mList.clear();
+ }
+
+ this.mList.addAll(newData);
+ notifyDataSetChanged();
+ }
+
+ /**
+ * 鏀瑰彉缁勪欢鏍峰紡
+ *
+ * @param textView 鏄剧ず缁勪欢
+ * 濡傛灉璁惧浠庢潵娌′笂鎶ヨ繃鏁版嵁鏁版嵁 鐘舵�侊細杩炴帴涓�
+ * 璁惧鍦ㄧ嚎 浣嗘槸褰撳墠澶勪簬鏁呴殰 鐘舵�侊細鏁呴殰
+ * 璁惧鍦ㄧ嚎锛堟湁涓婃姤杩囨暟鎹紝娌℃湁鏁呴殰锛� 鐘舵�侊細鍦ㄧ嚎
+ * 璁惧绂荤嚎 鐘舵�侊細绂荤嚎
+ * @param state_value 璁惧鐘舵��(1:杩炴帴涓�,2:鏁呴殰,3:姝e父(杩愯),4:绂荤嚎,)
+ */
+ private void setTextViewStyle(TextView textView, int state_value) {
+ String text = mContext.getString(R.string.my_power_station_operation);
+ Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_06b92a);
+ switch (state_value) {
+ case 1: {
+ text = mContext.getString(R.string.my_power_station_connecting);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300);
+ }
+ break;
+ case 2: {
+ text = mContext.getString(R.string.my_power_station_malfunction);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343);
+ }
+ break;
+ case 3: {
+ text = mContext.getString(R.string.my_power_station_operation);
+
+ }
+ break;
+ case 4: {
+ text = mContext.getString(R.string.my_power_station_off_line);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_b9b9b9);
+ }
+ break;
+
+ }
+ textView.setText(text);
+ textView.setBackground(drawable);
+
+
+ }
+
+ public interface OnClickListener {
+ void onClick(int position, CloudInverterDeviceBean deviceBean);
+
+ }
+
+ /**
+ * 涓�琛屽竷灞�瀹瑰櫒
+ */
+ static class MyViewHolder extends RecyclerView.ViewHolder {
+
+
+ public TextView device_search_name_tv;//鍚嶇О锛堢數绔檁璁惧鍚嶇О锛�
+ public TextView device_search_sn_tv;//mac
+ public TextView device_search_location_tv;//鍦板潃
+ public TextView device_search_state_tv;//鐘舵��
+
+
+ public MyViewHolder(@NonNull View itemView) {
+ super(itemView);
+ device_search_name_tv = itemView.findViewById(R.id.device_search_name_tv);
+ device_search_sn_tv = itemView.findViewById(R.id.device_search_sn_tv);
+ device_search_location_tv = itemView.findViewById(R.id.device_search_location_tv);
+ device_search_state_tv = itemView.findViewById(R.id.device_search_state_tv);
+ }
+ }
+}
--
Gitblit v1.8.0