From 6fa9d69da922c8049f5acfcbb9ce9fd26811024c Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期四, 16 四月 2020 17:10:57 +0800 Subject: [PATCH] 请合并代码 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceInfoIconControl.cs | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 159 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceInfoIconControl.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceInfoIconControl.cs new file mode 100755 index 0000000..7da740e --- /dev/null +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/DeviceControls/DeviceInfoIconControl.cs @@ -0,0 +1,159 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Text; +using ZigBee.Device; + +namespace Shared.Phone.UserCenter +{ + /// <summary> + /// 璁惧淇℃伅鐣岄潰鐨勮澶囧浘鏍囨帶浠�(鍏煎缃戝叧) + /// </summary> + public class DeviceInfoIconControl : FrameLayoutControl + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 璁惧Mac鍦板潃 + /// </summary> + private string deviceMac = null; + /// <summary> + /// 璁惧绔偣 + /// </summary> + private int deviceEpoint = -1; + /// <summary> + /// 缃戝叧瀵硅薄 + /// </summary> + private ZbGateway zbGateway = null; + /// <summary> + /// 鍥炬爣鎺т欢 + /// </summary> + private NormalViewControl btnIcon = null; + + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 璁惧淇℃伅鐣岄潰鐨勮澶囧浘鏍囨帶浠� + /// </summary> + public DeviceInfoIconControl() + { + //绗竴灞傚簳鑹� + this.Height = Application.GetMinRealAverage(207); + this.Width = Application.GetMinRealAverage(207); + this.BackgroundColor = UserCenterColor.Current.White; + this.Radius = (uint)Application.GetMinRealAverage(207) / 2; + this.UseClickStatu = false; + } + + /// <summary> + /// 鍒濆鍖�(璁惧) + /// </summary> + /// <param name="i_device">璁惧瀵硅薄</param> + public void InitControl(CommonDevice i_device) + { + this.deviceMac = i_device.DeviceAddr; + //闃叉鍑虹幇璇樊 + int iconWidth = Application.GetMinRealAverage(207) - Application.GetMinRealAverage(12) - Application.GetMinRealAverage(12); + //绗簩灞傚簳鑹� + var btnIcon2 = new NormalViewControl(iconWidth, iconWidth, false); + btnIcon2.BackgroundColor = 0xfffef1ed; + btnIcon2.Radius = (uint)iconWidth / 2; + btnIcon2.Gravity = Gravity.Center; + this.AddChidren(btnIcon2, ChidrenBindMode.BindEventOnly); + + //璁惧鍥炬爣 + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac); + if (listDevice.Count == 0) + { + //瀵瑰簲鍗曠函鍙湁200鍥炶矾鐨勮澶� + listDevice.Add(Common.LocalDevice.Current.GetOTADevice(deviceMac)); + } + btnIcon = new NormalViewControl(Application.GetMinRealAverage(121), Application.GetMinRealAverage(121), false); + btnIcon.Gravity = Gravity.Center; + Common.LocalDevice.Current.SetDeviceObjectIconToControl(btnIcon, listDevice); + this.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly); + } + + /// <summary> + /// 鍒濆鍖�(璁惧绔偣) + /// </summary> + /// <param name="i_device">璁惧瀵硅薄</param> + public void InitControl(string deviceMacAddr, int epoint) + { + this.deviceMac = deviceMacAddr; + this.deviceEpoint = epoint; + //闃叉鍑虹幇璇樊 + int iconWidth = Application.GetMinRealAverage(207) - Application.GetMinRealAverage(12) - Application.GetMinRealAverage(12); + //绗簩灞傚簳鑹� + var btnIcon2 = new NormalViewControl(iconWidth, iconWidth, false); + btnIcon2.BackgroundColor = 0xfffef1ed; + btnIcon2.Radius = (uint)iconWidth / 2; + btnIcon2.Gravity = Gravity.Center; + this.AddChidren(btnIcon2, ChidrenBindMode.BindEventOnly); + + //璁惧鍥炬爣 + btnIcon = new NormalViewControl(Application.GetMinRealAverage(121), Application.GetMinRealAverage(121), false); + btnIcon.Gravity = Gravity.Center; + Common.LocalDevice.Current.SetDeviceIconToControl(btnIcon, Common.LocalDevice.Current.GetDevice(deviceMacAddr, epoint)); + this.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly); + } + + /// <summary> + /// 鍒濆鍖�(缃戝叧) + /// </summary> + /// <param name="i_gateway">缃戝叧瀵硅薄</param> + public void InitControl(ZbGateway i_gateway) + { + this.zbGateway = i_gateway; + //闃叉鍑虹幇璇樊 + int iconWidth = Application.GetMinRealAverage(207) - Application.GetMinRealAverage(12) - Application.GetMinRealAverage(12); + //绗簩灞傚簳鑹� + var btnIcon2 = new NormalViewControl(iconWidth, iconWidth, false); + btnIcon2.BackgroundColor = 0xfffef1ed; + btnIcon2.Radius = (uint)iconWidth / 2; + btnIcon2.Gravity = Gravity.Center; + this.AddChidren(btnIcon2, ChidrenBindMode.BindEventOnly); + + //璁惧鍥炬爣 + btnIcon = new NormalViewControl(Application.GetMinRealAverage(121), Application.GetMinRealAverage(121), false); + btnIcon.Gravity = Gravity.Center; + HdlGatewayLogic.Current.SetGatewayIcon(btnIcon, i_gateway); + this.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly); + } + + #endregion + + #region 鈻� 涓�鑸柟娉昣__________________________ + + /// <summary> + /// 閲嶆柊鍒锋柊鎺т欢 + /// </summary> + public void RefreshControl() + { + if (this.deviceEpoint != -1) + { + //鍒锋柊鍥炬爣 + Common.LocalDevice.Current.SetDeviceIconToControl(btnIcon, Common.LocalDevice.Current.GetDevice(this.deviceMac, this.deviceEpoint)); + } + else if (this.deviceMac != null) + { + //鍒锋柊鍥炬爣 + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac); + if (listDevice.Count == 0) + { + //瀵瑰簲鍗曠函鍙湁200鍥炶矾鐨勮澶� + listDevice.Add(Common.LocalDevice.Current.GetOTADevice(deviceMac)); + } + Common.LocalDevice.Current.SetDeviceObjectIconToControl(btnIcon, listDevice); + } + else + { + //鍒锋柊鍥炬爣 + HdlGatewayLogic.Current.SetGatewayIcon(btnIcon, this.zbGateway); + } + } + + #endregion + } +} -- Gitblit v1.8.0