From a1628cc4760d366e118ea46d7d7057323ea87d31 Mon Sep 17 00:00:00 2001
From: panlili2024 <14743743+panlili2024@user.noreply.gitee.com>
Date: 星期二, 26 八月 2025 10:58:14 +0800
Subject: [PATCH] 代码同步
---
HDLSDK/app/src/main/java/com/hdl/hdlsdk/device/DevicesListAdapter.java | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 108 insertions(+), 0 deletions(-)
diff --git a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/device/DevicesListAdapter.java b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/device/DevicesListAdapter.java
new file mode 100644
index 0000000..730e98e
--- /dev/null
+++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/device/DevicesListAdapter.java
@@ -0,0 +1,108 @@
+package com.hdl.hdlsdk.device;
+
+import android.content.Context;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.CompoundButton;
+import android.widget.Switch;
+import android.widget.TextView;
+
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.hdl.hdlsdk.R;
+import com.hdl.hdlsdk.bean.FunctionBean;
+import com.hdl.sdk.common.exception.HDLLinkException;
+import com.hdl.sdk.connect.HDLLink;
+import com.hdl.sdk.connect.bean.request.DeviceControlRequest;
+import com.hdl.sdk.connect.callback.HDLLinkCallBack;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class DevicesListAdapter extends RecyclerView.Adapter<DevicesListAdapter.ViewHolder> {
+
+ private LayoutInflater mInflater;
+ private List<FunctionBean> mList = null;
+
+ public DevicesListAdapter(Context context, List<FunctionBean> devicesList) {
+ this.mInflater = LayoutInflater.from(context);
+ this.mList = devicesList;
+ }
+
+ /**
+ * item鏄剧ず绫诲瀷
+ *
+ * @param parent
+ * @param viewType
+ * @return
+ */
+ @Override
+ public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ View view = mInflater.inflate(R.layout.item_devices_list, parent, false);
+ ViewHolder viewHolder = new ViewHolder(view);
+ return viewHolder;
+ }
+
+ /**
+ * 鏁版嵁鐨勭粦瀹氭樉绀�
+ *
+ * @param holder
+ * @param position
+ */
+ @Override
+ public void onBindViewHolder(ViewHolder holder, int position) {
+ holder.item_tv.setText(mList.get(position).getName());
+ holder.device_on_off_switch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
+ propertyDown(mList.get(position), isChecked);
+ }
+ });
+ }
+
+ @Override
+ public int getItemCount() {
+ return mList.size();
+ }
+
+ //鑷畾涔夌殑ViewHolder锛屾寔鏈夋瘡涓狪tem鐨勭殑鎵�鏈夌晫闈㈠厓绱�
+ public static class ViewHolder extends RecyclerView.ViewHolder {
+ public TextView item_tv;
+ public Switch device_on_off_switch;
+
+ public ViewHolder(View view) {
+ super(view);
+ item_tv = (TextView) view.findViewById(R.id.device_title_tv);
+ device_on_off_switch = view.findViewById(R.id.device_on_off_switch);
+ }
+ }
+
+ private void propertyDown(FunctionBean functionBean, Boolean isOn){
+ List<DeviceControlRequest> requestList = new ArrayList<>();
+ DeviceControlRequest request = new DeviceControlRequest();
+ request.setSid(functionBean.getSid());
+ List<DeviceControlRequest.StatusBean> statusBeanList= new ArrayList<>();
+ DeviceControlRequest.StatusBean bean = new DeviceControlRequest.StatusBean();
+ bean.setKey("on_off");
+ bean.setValue(isOn ? "on" : "off");
+ statusBeanList.add(bean);
+ request.setStatus(statusBeanList);
+ requestList.add(request);
+ String time = String.valueOf(System.currentTimeMillis());
+
+ HDLLink.getInstance().propertyDown(requestList, new HDLLinkCallBack() {
+ @Override
+ public void onSuccess(String data) {
+ Log.i("propertyDown",data);
+ }
+
+ @Override
+ public void onError(HDLLinkException e) {
+ Log.e("propertyDown", "ERROR :"+ e.getMsg());
+ }
+ });
+
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0