From 2029e64ec0491f7e511dc15bffaf821bfbabe2de Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期一, 20 七月 2020 14:10:22 +0800 Subject: [PATCH] 上传一个很特别的新版本 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/RoomDeviceGroupMenuControl.cs | 139 +++++++--------------------------------------- 1 files changed, 21 insertions(+), 118 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/RoomDeviceGroupMenuControl.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/RoomDeviceGroupMenuControl.cs index 79a91eb..f4e0c58 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/RoomDeviceGroupMenuControl.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/CompoundControls/RoomDeviceGroupMenuControl.cs @@ -21,7 +21,7 @@ /// </summary> public Action<List<CommonDevice>> SelectDeviceEvent = null; /// <summary> - /// 褰撳墠閫夋嫨鐨勪富閿�(鎴块棿绫诲瀷鏃讹細鎴块棿ID 璁惧绫诲瀷鏃讹細R鏂囦欢閲岄潰鐨処D) + /// 褰撳墠閫夋嫨鐨勪富閿�(鎴块棿绫诲瀷鏃讹細鎴块棿ID 璁惧绫诲瀷鏃讹細鏂囨湰淇℃伅) /// </summary> public string nowSelectKeys { @@ -36,6 +36,7 @@ { return rId.ToString(); } + index++; } return string.Empty; } @@ -54,7 +55,7 @@ /// <summary> /// 璁惧瀵硅薄 /// </summary> - private Dictionary<int, List<CommonDevice>> dicDevice = null; + private Dictionary<string, List<CommonDevice>> dicDevice = null; /// <summary> /// 鍓嶅洖閫夋嫨鐨勬帶浠� /// </summary> @@ -81,8 +82,8 @@ /// <summary> /// 璁惧缁勫悎鐨勮彍鍗曟帶浠� /// </summary> - /// <param name="i_dicDevice">璁惧鍒楄〃,keys:R鏂囦欢閲岄潰鐨勬暟瀛楃紪鍙�</param> - public RoomDeviceGroupMenuControl(Dictionary<int, List<CommonDevice>> i_dicDevice) + /// <param name="i_dicDevice">璁惧鍒楄〃,keys:鏂囨湰</param> + public RoomDeviceGroupMenuControl(Dictionary<string, List<CommonDevice>> i_dicDevice) { this.dicDevice = i_dicDevice; this.Height = Application.GetRealHeight(204); @@ -119,14 +120,14 @@ //璁$畻瀛楃鐨勭湡瀹炲搴� btnTempWidth.Text = listRoom[i].Name; - this.DoInitControl(scrolContr, i, i, listRoom[i].Name, btnTempWidth.GetRealWidthByText()); + this.DoInitControl(scrolContr, i.ToString(), i, listRoom[i].Name, btnTempWidth.GetRealWidthByText()); } } else { //鍒濆鍖栬澶囨ā寮忕殑鎺т欢 int index = 0; - foreach (int keys in dicDevice.Keys) + foreach (string strKeys in dicDevice.Keys) { if (oldSelectIndex == -1) { @@ -134,8 +135,8 @@ oldSelectIndex = index; } //璁$畻瀛楃鐨勭湡瀹炲搴� - btnTempWidth.Text = Language.StringByID(keys); - this.DoInitControl(scrolContr, keys, index, btnTempWidth.Text, btnTempWidth.GetRealWidthByText()); + btnTempWidth.Text = strKeys; + this.DoInitControl(scrolContr, strKeys, index, btnTempWidth.Text, btnTempWidth.GetRealWidthByText()); index++; } } @@ -147,11 +148,11 @@ /// 鍒濆鍖栨帶浠� /// </summary> /// <param name="scrolContr">鍒楄〃鎺т欢</param> - /// <param name="keys">瀛楀吀鐨勪富閿�</param> + /// <param name="strKey">瀛楀吀鐨勪富閿�</param> /// <param name="index">绱㈠紩</param> /// <param name="text">鏄剧ず鏂囨湰</param> /// <param name="textWidth">鏂囨湰鐪熷疄瀹藉害</param> - private void DoInitControl(HorizontalScrolViewLayout scrolContr, int keys, int index, string text, int textWidth) + private void DoInitControl(HorizontalScrolViewLayout scrolContr, string strKey, int index, string text, int textWidth) { //甯﹀簳鍥炬帶浠剁殑鏈�灏忓搴� int minWidth = Application.GetRealWidth(255); @@ -215,11 +216,11 @@ //璋冪敤鍥炶皟鍑芥暟 if (this.dicDevice != null) { - this.SelectDeviceEvent?.Invoke(this.dicDevice[keys]); + this.SelectDeviceEvent?.Invoke(this.dicDevice[strKey]); } else if (this.listRoom != null) { - this.SelectRoomEvent?.Invoke(this.listRoom[keys]); + this.SelectRoomEvent?.Invoke(this.listRoom[Convert.ToInt32(strKey)]); } }; @@ -228,111 +229,14 @@ { if (this.dicDevice != null) { - this.SelectDeviceEvent?.Invoke(this.dicDevice[keys]); + this.SelectDeviceEvent?.Invoke(this.dicDevice[strKey]); } else if (this.listRoom != null) { - this.SelectRoomEvent?.Invoke(this.listRoom[keys]); + this.SelectRoomEvent?.Invoke(this.listRoom[Convert.ToInt32(strKey)]); } } } - - /// <summary> - /// 鍒濆鍖栨帶浠� - /// </summary> - /// <param name="scrolContr">鍒楄〃鎺т欢</param> - /// <param name="keys">瀛楀吀鐨勪富閿�</param> - /// <param name="index">绱㈠紩</param> - /// <param name="text">鏄剧ず鏂囨湰</param> - /// <param name="textWidth">鏂囨湰鐪熷疄瀹藉害</param> - private void DoInitControl2(HorizontalScrolViewLayout scrolContr, int keys, int index, string text, int textWidth) - { - //甯﹀簳鍥炬帶浠剁殑鏈�灏忓搴� - int minWidth = Application.GetRealWidth(255); - //甯﹀簳鍥炬帶浠剁殑鐪熷疄瀹藉害 <鏂囧瓧鐨勫搴︾殑璁$畻 frameBack.Width - (int)(frameBack.Height * 0.47)> - int realWidth = textWidth + (int)(Application.GetRealHeight(159) * 0.47); - if (realWidth < minWidth) - { - realWidth = minWidth; - } - - //甯﹀浘鐗囩殑 - var frameBack = new FrameLayoutStatuControl(); - frameBack.UseClickStatu = false; - frameBack.Gravity = Gravity.Center; - frameBack.Height = Application.GetRealHeight(159); - frameBack.Width = realWidth; - frameBack.BorderWidth = 1; - frameBack.BorderColor = UserCenterColor.Current.TextColor1; - scrolContr.AddChidren(frameBack); - if (oldSelectIndex == index) - { - frameBack.SetViewShadow(true); - frameBack.BackgroundColor = UserCenterColor.Current.TextColor1; - oldFrameBack = frameBack; - } - - //鏂囧瓧 - var btnText = new NormalViewControl(textWidth, frameBack.Height, false); - btnText.Gravity = Gravity.CenterHorizontal; - btnText.Text = text; - btnText.TextSize = 12; - btnText.TextAlignment = TextAlignment.Center; - if (oldSelectIndex == index) - { - btnText.TextColor = UserCenterColor.Current.White; - oldBtnText = btnText; - } - else - { - btnText.TextColor = UserCenterColor.Current.TextGrayColor1; - } - frameBack.AddChidren(btnText, ChidrenBindMode.BindEvent); - - frameBack.ButtonClickEvent += (sender, e) => - { - if (oldSelectIndex == index) - { - //鍚屼竴涓笢瑗� - return; - } - oldSelectIndex = index; - - //鐘舵�佸彉鏇� - frameBack.SetViewShadow(true); - frameBack.BackgroundColor = UserCenterColor.Current.TextColor1; - btnText.TextColor = UserCenterColor.Current.White; - - oldFrameBack.SetViewShadow(false); - oldFrameBack.BackgroundColor = UserCenterColor.Current.Transparent; - oldBtnText.TextColor = UserCenterColor.Current.TextGrayColor1; - oldFrameBack = frameBack; - oldBtnText = btnText; - //璋冪敤鍥炶皟鍑芥暟 - if (this.dicDevice != null) - { - this.SelectDeviceEvent?.Invoke(this.dicDevice[keys]); - } - else if (this.listRoom != null) - { - this.SelectRoomEvent?.Invoke(this.listRoom[keys]); - } - }; - - //璋冪敤鍥炶皟鍑芥暟 - if (oldSelectIndex == index) - { - if (this.dicDevice != null) - { - this.SelectDeviceEvent?.Invoke(this.dicDevice[keys]); - } - else if (this.listRoom != null) - { - this.SelectRoomEvent?.Invoke(this.listRoom[keys]); - } - } - } - #endregion @@ -356,27 +260,26 @@ /// <summary> /// 璁剧疆鍒濆閫夋嫨(璇峰湪鍒濆鍖栧畬鎴愪箣鍓嶈皟鐢�) /// </summary> - /// <param name="keys">鎴块棿ID 鎴栬�� R鏂囦欢閲岄潰鐨勬暟鍊肩紪鍙�(杞负瀛楃涓茬被鍨�)</param> - public void SetDefultIndex(string keys) + /// <param name="strKey">鎴块棿ID 鎴栬�� 鏂囨湰淇℃伅</param> + public void SetDefultIndex(string strKey) { if (listRoom != null) { for (int index = 0; index < listRoom.Count; index++) { - if (listRoom[index].Id == keys) + if (listRoom[index].Id == strKey) { oldSelectIndex = index; break; } } } - else if (keys != string.Empty) + else if (strKey != string.Empty) { int i = 0; - int textId = Convert.ToInt32(keys); - foreach (int rId in dicDevice.Keys) + foreach (string rId in dicDevice.Keys) { - if (rId == textId) + if (rId == strKey) { oldSelectIndex = i; break; -- Gitblit v1.8.0