From a715181089be0d31cd737a5367ffd02690b9d77f Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 12 十一月 2020 13:36:01 +0800 Subject: [PATCH] 20201112 --- HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 381 ++++++++++++++++++++++++++++++++--------------------- 1 files changed, 228 insertions(+), 153 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs index c9480f1..4f332e2 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs @@ -117,7 +117,7 @@ contentPageView = new PageLayout() { Y = Application.GetRealHeight(64), - Height = Application.GetRealHeight(667 - 64-49+30), + Height = Application.GetRealHeight(667 - 64 - 49 + 30), BackgroundColor = CSS_Color.MainBackgroundColor, IsShowPoint = false }; @@ -144,7 +144,7 @@ Height = Application.GetRealHeight(52), }; roomPageView.AddChidren(roomFloorChangeView); - #region 鎴块棿搴曢儴鍒囨崲鏄剧ず鍖哄煙 + #region 鎴块棿椤堕儴鍒囨崲鏄剧ず鍖哄煙 /// <summary> /// 鎴块棿鍖哄煙锛岄《閮ㄥ尯鍩� /// </summary> @@ -177,22 +177,22 @@ TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, - Text = OnAppConfig.Instance.CurFoor, + Text = DB_ResidenceData.residenceData.CurFoor, }; roomFloorChangeView.AddChidren(btnFloor); /// <summary> /// 鏄剧ず鏂瑰紡鍒囨崲鎸夐挳 /// </summary> - btnSwitchDipaly = new Button() - { - X = Application.GetRealWidth(335), - Y = Application.GetRealHeight(12), - Width = Application.GetMinRealAverage(28), - Height = Application.GetMinRealAverage(28), - UnSelectedImagePath = "Classification/ToggleDisplayThumbnail.png",//缂╃暐鍥� - SelectedImagePath = "Classification/ToggleDisplayLarge.png", - }; - roomFloorChangeView.AddChidren(btnSwitchDipaly); + //btnSwitchDipaly = new Button() + //{ + // X = Application.GetRealWidth(335), + // Y = Application.GetRealHeight(12), + // Width = Application.GetMinRealAverage(28), + // Height = Application.GetMinRealAverage(28), + // UnSelectedImagePath = "Classification/ToggleDisplayThumbnail.png",//缂╃暐鍥� + // SelectedImagePath = "Classification/ToggleDisplayLarge.png", + //}; + //roomFloorChangeView.AddChidren(btnSwitchDipaly); #endregion /// <summary> @@ -215,7 +215,7 @@ /// <summary> /// 鍔犺浇鎴块棿鍒楄〃鍖哄煙 /// </summary> - void LoadRoomRows () + void LoadRoomRows() { roomListView.RemoveAll(); foreach (var room in roomsShowed) @@ -261,84 +261,83 @@ #region 鐜鏁版嵁 var environmentalView = new FrameLayout() - { - Y = Application.GetRealHeight(2) + btnFloorAndRoomName.Bottom, - Height = Application.GetRealHeight(32), - Tag = "EnvironmentalView", - }; - roomView.AddChidren(environmentalView); + { + Y = Application.GetRealHeight(2) + btnFloorAndRoomName.Bottom, + Height = Application.GetRealHeight(32), + Tag = "EnvironmentalView", + }; + roomView.AddChidren(environmentalView); - Button btnTempIcon = new Button() - { - X = Application.GetRealWidth(12), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/TempIcon.png", - }; - environmentalView.AddChidren(btnTempIcon); + Button btnTempIcon = new Button() + { + X = Application.GetRealWidth(12), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/DeviceInfoIcon/TempIcon.png", + }; + environmentalView.AddChidren(btnTempIcon); - var btnTempValues = new Button() - { - X = btnTempIcon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--掳", - TextAlignment = TextAlignment.CenterLeft, - Tag = "TempValues" - }; - environmentalView.AddChidren(btnTempValues); + var btnTempValues = new Button() + { + X = btnTempIcon.Right + Application.GetRealWidth(4), + Width = Application.GetRealWidth(30), + Gravity = Gravity.CenterVertical, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = "--掳", + TextAlignment = TextAlignment.CenterLeft, + Tag = "TempValues" + }; + environmentalView.AddChidren(btnTempValues); - Button btnHumidityIcon = new Button() - { - X = btnTempValues.Right + Application.GetRealWidth(2), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/HumidityIcon.png", - }; - environmentalView.AddChidren(btnHumidityIcon); + Button btnHumidityIcon = new Button() + { + X = btnTempValues.Right + Application.GetRealWidth(2), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/DeviceInfoIcon/HumidityIcon.png", + }; + environmentalView.AddChidren(btnHumidityIcon); - var btnHumidityValues = new Button() - { - X = btnHumidityIcon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--%", - TextAlignment = TextAlignment.CenterLeft, - Tag = "HumidityValues" - }; - environmentalView.AddChidren(btnHumidityValues); + var btnHumidityValues = new Button() + { + X = btnHumidityIcon.Right + Application.GetRealWidth(4), + Width = Application.GetRealWidth(30), + Gravity = Gravity.CenterVertical, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = "--%", + TextAlignment = TextAlignment.CenterLeft, + Tag = "HumidityValues" + }; + environmentalView.AddChidren(btnHumidityValues); - Button btnPm25Icon = new Button() - { - X = btnHumidityValues.Right + Application.GetRealWidth(2), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/Pm25Icon.png", - }; - environmentalView.AddChidren(btnPm25Icon); + Button btnPm25Icon = new Button() + { + X = btnHumidityValues.Right + Application.GetRealWidth(2), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/DeviceInfoIcon/Pm25Icon.png", + }; + environmentalView.AddChidren(btnPm25Icon); - var btnPm25Values = new Button() - { - X = btnPm25Icon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS.CSS_Color.MainBackgroundColor, - TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--", - TextAlignment = TextAlignment.CenterLeft, - Tag = "Pm25Values" - }; - environmentalView.AddChidren(btnPm25Values); - roomView.AddChidren(environmentalView); + var btnPm25Values = new Button() + { + X = btnPm25Icon.Right + Application.GetRealWidth(4), + Width = Application.GetRealWidth(30), + Gravity = Gravity.CenterVertical, + TextColor = CSS_Color.MainBackgroundColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = "--", + TextAlignment = TextAlignment.CenterLeft, + Tag = "Pm25Values" + }; + environmentalView.AddChidren(btnPm25Values); + roomView.AddChidren(environmentalView); #endregion - var btnAllClose = new Button() { X = Application.GetRealWidth(282), @@ -360,7 +359,11 @@ roomViewbgColor.MouseUpEventHandler += (sender, e) => { - var view = new RoomPage(room); + Action<Room > ReloadRoomName = (obj) => { + btnFloorAndRoomName.Text = obj.floorName + obj.name; + }; + + var view = new RoomPage(room, ReloadRoomName); MainPage.BasePageView.AddChidren(view); view.LoadPage(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; @@ -388,12 +391,8 @@ Y = Application.GetRealHeight(16), Height = Application.GetRealHeight(667 - 64 - 49 + 20), }; - - if (DB_ResidenceData.residenceData.functionTypeList.Count > 4) - { - functionContentView.Height += Application.GetRealHeight((220 * (DB_ResidenceData.residenceData.functionTypeList.Count - 4 - 2) / 2) + 20); - } functionsPageView.AddChidren(functionContentView); + int index = 0; List<int> specialList = new List<int>() { 1, 2, 5, 6, 9, 10, 13, 14, 17, 18, 21, 22 }; @@ -415,8 +414,76 @@ var lastY1 = Application.GetRealWidth(16); var lastY2 = Application.GetRealWidth(16); + var functionCategoryCount = 0; + foreach (var item in DB_ResidenceData.residenceData.functionTypeList) { + int functionCount = 0; + int functionOnCount = 0; + switch (item) + { + case ShowFunction.Light: + #region Light + functionCount = DB_ResidenceData.functionList.lights.Count; + functionOnCount = DB_ResidenceData.functionList.lights.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + #endregion + break; + case ShowFunction.AC: + #region AC + functionCount = DB_ResidenceData.functionList.aCs.Count; + functionOnCount = DB_ResidenceData.functionList.aCs.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + #endregion + break; + case ShowFunction.Curtain: + #region Curtain + functionCount = DB_ResidenceData.functionList.curtains.Count; + functionOnCount = DB_ResidenceData.functionList.curtains.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + #endregion + break; + case ShowFunction.FloorHeating: + #region 鍦扮儹 + functionCount = DB_ResidenceData.functionList.floorHeatings.Count; + functionOnCount = DB_ResidenceData.functionList.floorHeatings.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + #endregion + break; + case ShowFunction.DoorLock: + break; + case ShowFunction.Electric: + #region 鐢靛櫒 + functionCount = DB_ResidenceData.functionList.electricals.Count; + functionOnCount = DB_ResidenceData.functionList.electricals.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + #endregion + break; + case ShowFunction.EnergyMonitoring: + break; + case ShowFunction.Environmental: + #region 鐜鏁版嵁 + functionCount = DB_ResidenceData.functionList.sensorsEnvironmentalScience.Count; + #endregion + break; + case ShowFunction.FreshAir: + break; + case ShowFunction.Music: + functionCount = Music.A31MusicModel.A31MusicModelList.Count; + functionOnCount = Music.A31MusicModel.A31MusicModelList.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count; + break; + case ShowFunction.Panel: + break; + case ShowFunction.SecurityMonitoring: + break; + case ShowFunction.Sensor: + break; + case ShowFunction.VideoIntercom: + break; + + } + + if (functionCount == 0 && item != ShowFunction.Music) + { + //continue; + } + functionCategoryCount++; + FrameLayout functionView = new FrameLayout() { Height = Application.GetRealWidth(161), @@ -448,13 +515,6 @@ s2View.AddChidren(functionView); } - Button btnFunctionViewBg; - btnFunctionViewBg = new Button() - { - Height = Application.GetRealWidth(161), - UnSelectedImagePath = "FunctionIcon/FunctionBg/" + item + "FunctionBg.png", - }; - functionView.AddChidren(btnFunctionViewBg); Button btnName = new Button() { @@ -469,8 +529,15 @@ functionView.AddChidren(btnName); - int functionCount = 0; - int functionOnCount = 0; + Button btnFunctionViewBg; + btnFunctionViewBg = new Button() + { + Height = Application.GetRealWidth(161), + UnSelectedImagePath = "FunctionIcon/FunctionBg/" + item + "FunctionBg.png", + }; + functionView.AddChidren(btnFunctionViewBg); + + int functionPageTitleId = 0; switch (item) { case ShowFunction.Light: @@ -486,20 +553,17 @@ Height = Application.GetRealWidth(32), SelectedImagePath = "Public/PowerOpen.png", UnSelectedImagePath = "Public/PowerClose.png", - IsSelected = functionCount == functionOnCount + IsSelected = functionOnCount > 0, + Tag = item + "_AllControl", }; functionView.AddChidren(btnLightPower); + btnLightPower.MouseUpEventHandler = (sender, e) => { LoadEvent_SwitchFunction(btnLightPower, item); }; - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { - var skipView = new FunctionPage(); - MainPage.BasePageView.AddChidren(skipView); - skipView.LoadPage(StringId.Lights); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; + functionPageTitleId = StringId.Lights; + #endregion break; case ShowFunction.AC: @@ -515,20 +579,15 @@ Height = Application.GetRealWidth(32), SelectedImagePath = "Public/PowerOpen.png", UnSelectedImagePath = "Public/PowerClose.png", - IsSelected = functionCount == functionOnCount + Tag = item + "_AllControl", + IsSelected = functionOnCount > 0, }; functionView.AddChidren(btnAcPower); btnAcPower.MouseUpEventHandler = (sender, e) => { LoadEvent_SwitchFunction(btnAcPower, item); }; - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { - var skipView = new FunctionPage(); - MainPage.BasePageView.AddChidren(skipView); - skipView.LoadPage(StringId.AC); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; + functionPageTitleId = StringId.AC; #endregion break; case ShowFunction.Curtain: @@ -545,7 +604,8 @@ Height = Application.GetRealWidth(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png", - IsSelected = functionCount == functionOnCount + //Tag = item + "_AllControl", + IsSelected = false }; functionView.AddChidren(btnClose); @@ -558,17 +618,12 @@ Height = Application.GetRealWidth(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png", + IsSelected = true, }; functionView.AddChidren(btnOpen); LoadEvent_CurtainSwitch(btnClose, btnOpen); - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { - var skipView = new FunctionPage(); - MainPage.BasePageView.AddChidren(skipView); - skipView.LoadPage(StringId.Curtain); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; + functionPageTitleId = StringId.Curtain; #endregion break; case ShowFunction.FloorHeating: @@ -584,20 +639,15 @@ Height = Application.GetRealWidth(32), SelectedImagePath = "Public/PowerOpen.png", UnSelectedImagePath = "Public/PowerClose.png", - IsSelected = functionCount == functionOnCount + Tag = item + "_AllControl", + IsSelected = functionOnCount > 0 }; functionView.AddChidren(btnFhPower); btnFhPower.MouseUpEventHandler = (sender, e) => { LoadEvent_SwitchFunction(btnFhPower, item); }; - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { - var skipView = new FunctionPage(); - MainPage.BasePageView.AddChidren(skipView); - skipView.LoadPage(StringId.FloorHeating); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; + functionPageTitleId = StringId.FloorHeating; #endregion break; case ShowFunction.DoorLock: @@ -616,20 +666,15 @@ Height = Application.GetRealWidth(32), SelectedImagePath = "Public/PowerOpen.png", UnSelectedImagePath = "Public/PowerClose.png", - IsSelected = functionCount == functionOnCount + Tag = item + "_AllControl", + IsSelected = functionOnCount > 0, }; functionView.AddChidren(btnElectricPower); btnElectricPower.MouseUpEventHandler = (sender, e) => { LoadEvent_SwitchFunction(btnElectricPower, item); }; - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { - var skipView = new FunctionPage(); - MainPage.BasePageView.AddChidren(skipView); - skipView.LoadPage(StringId.Electric); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; + functionPageTitleId = StringId.Electric; #endregion break; case ShowFunction.EnergyMonitoring: @@ -677,31 +722,61 @@ break; } - if (item != ShowFunction.Environmental) + //鐣岄潰璺宠浆--闊充箰璺宠浆鑷繁鐨勭晫闈�--鐜璺宠浆鑷繁鐨勭晫闈� + if (item != ShowFunction.Music && item != ShowFunction.Environmental) + { + btnFunctionViewBg.MouseUpEventHandler = (sender, e) => + { + var skipView = new FunctionPage(); + MainPage.BasePageView.AddChidren(skipView); + skipView.LoadPage(functionPageTitleId); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + } + if (item != ShowFunction.Environmental && functionCount != 0) { Button btnFunctionCount = new Button() { - X = Application.GetRealWidth(16), + X = Application.GetRealWidth(16) + Application.GetRealWidth(7 * functionCount.ToString().Length), Y = btnName.Bottom, Width = Application.GetRealWidth(120), Height = Application.GetRealHeight(24), - TextColor = CSS_Color.FirstLevelTitleColor, - TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, - Text = functionOnCount + "/" + functionCount, - Tag = item + "_onCount" + Text = "/" + functionCount, }; functionView.AddChidren(btnFunctionCount); - + Button btnOpenCount = new Button() + { + X = Application.GetRealWidth(16), + Y = btnName.Bottom, + Width = Application.GetRealWidth(12 * functionCount.ToString().Length), + Height = Application.GetRealHeight(24), + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextAlignment = TextAlignment.CenterLeft, + Text = functionOnCount.ToString(), + Tag = item + "_onCount", + BorderWidth = 0, + }; + functionView.AddChidren(btnOpenCount); } index++; } + + if (functionCategoryCount > 4) + { + functionContentView.Height = Application.GetRealHeight((220 * functionCategoryCount / 2) + 20); + s1View.Height = s2View.Height = functionContentView.Height; + } + #endregion } #region 鍒囨崲妤煎眰 /// <summary> - /// 浣忓畢鍒楄〃鐐瑰嚮浜嬩欢 + /// 妤煎眰鏄剧ず鍒囨崲 /// </summary> void LoadDialog_ChangeFloor() { @@ -802,7 +877,7 @@ Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(112), Height = Application.GetRealHeight(1), - BackgroundColor = CSS.CSS_Color.BackgroundColor + BackgroundColor = CSS_Color.BackgroundColor }); } var btnHomeName = new Button() @@ -811,10 +886,10 @@ Width = Application.GetRealWidth(112), Height = Application.GetRealHeight(44), TextAlignment = TextAlignment.CenterLeft, - TextColor = CSS.CSS_Color.FirstLevelTitleColor, - SelectedTextColor = CSS.CSS_Color.MainColor, + TextColor = CSS_Color.FirstLevelTitleColor, + SelectedTextColor = CSS_Color.MainColor, Text = floor, - TextSize = CSS.CSS_FontSize.SubheadingFontSize, + TextSize = CSS_FontSize.SubheadingFontSize, IsSelected = btnFloor.Text == floor, IsMoreLines = true, Tag = floor @@ -857,4 +932,4 @@ } #endregion } -} +} \ No newline at end of file -- Gitblit v1.8.0