From a7d20263f28aa009ef8e064a7f9700d7cd642492 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期三, 10 六月 2020 10:06:47 +0800
Subject: [PATCH] 2020-06-10-1
---
HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 230 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 170 insertions(+), 60 deletions(-)
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index e0eb990..912cf00 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -11,7 +11,7 @@
{
#region 鎺т欢鍒楄〃
- FrameLayout bodyView;
+ static ClassificationPage bodyView;
#region 椤堕儴鎺т欢
/// <summary>
/// 鎴块棿鍒嗛〉
@@ -40,11 +40,11 @@
/// <summary>
/// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
/// </summary>
- Button btnFoorDownIcon;
+ Button btnFloorDownIcon;
/// <summary>
/// 妤煎眰鏄剧ず
/// </summary>
- Button btnFoor;
+ Button btnFloor;
/// <summary>
/// 鏄剧ず鏂瑰紡鍒囨崲鎸夐挳
/// </summary>
@@ -54,10 +54,6 @@
/// 鎴块棿鍒楄〃鍖哄煙
/// </summary>
VerticalScrolViewLayout roomListView;
- /// <summary>
- /// 鎴块棿鍖哄煙闆嗗悎
- /// </summary>
- List<FrameLayout> roomViewList;
#endregion
#region 鍔熻兘鍖哄煙
@@ -68,9 +64,14 @@
#endregion
+
+ List<Room> roomsShowed;
+
public ClassificationPage()
{
bodyView = this;
+ roomsShowed = new List<Room>();
+ roomsShowed.AddRange(DB_ResidenceData.residenceData.rooms);
}
public void LoadPage()
@@ -155,7 +156,7 @@
/// <summary>
/// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
/// </summary>
- btnFoorDownIcon = new Button()
+ btnFloorDownIcon = new Button()
{
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
@@ -163,22 +164,22 @@
Y = Application.GetRealHeight(18),
UnSelectedImagePath = "Public/DownIcon.png",
};
- roomFloorChangeView.AddChidren(btnFoorDownIcon);
+ roomFloorChangeView.AddChidren(btnFloorDownIcon);
/// <summary>
/// 妤煎眰鏄剧ず
/// </summary>
- btnFoor = new Button()
+ btnFloor = new Button()
{
- X = btnFoorDownIcon.Right,
+ X = btnFloorDownIcon.Right,
Y = Application.GetRealHeight(18),
Width = Application.GetRealWidth(200),
Height = Application.GetMinRealAverage(16),
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextAlignment = TextAlignment.CenterLeft,
- Text = UserConfig.Instance.CurFoor,
+ Text = OnAppConfig.Instance.CurFoor,
};
- roomFloorChangeView.AddChidren(btnFoor);
+ roomFloorChangeView.AddChidren(btnFloor);
/// <summary>
/// 鏄剧ず鏂瑰紡鍒囨崲鎸夐挳
/// </summary>
@@ -194,7 +195,6 @@
roomFloorChangeView.AddChidren(btnSwitchDipaly);
#endregion
-
/// <summary>
/// 鎴块棿鍒楄〃鍖哄煙
/// </summary>
@@ -205,12 +205,20 @@
BackgroundColor = CSS_Color.MainBackgroundColor,
};
roomPageView.AddChidren(roomListView);
- /// <summary>
- /// 鎴块棿鍖哄煙闆嗗悎
- /// </summary>
- roomViewList = new List<FrameLayout>();
+ LoadRoomRows();
+ roomListView.AddChidren(new Button() { Height = Application.GetRealHeight(20) });//澶珮瑙嗗浘锛屽皢瀵艰埅浜嗛伄鎸$殑閮ㄥ垎瀹屾暣鏄剧ず
+ #endregion
- foreach (var room in DB_ResidenceData.residenceData.rooms)
+ LoadDialog_ChangeFloor();
+ }
+
+ /// <summary>
+ /// 鍔犺浇鎴块棿鍒楄〃鍖哄煙
+ /// </summary>
+ void LoadRoomRows ()
+ {
+ roomListView.RemoveAll();
+ foreach (var room in roomsShowed)
{
var roomView = new FrameLayout()
{
@@ -220,6 +228,7 @@
Radius = (uint)Application.GetRealHeight(12),
BorderColor = 0x00000000,
BorderWidth = 1,
+ Tag = room.sid,
};
roomListView.AddChidren(roomView);
@@ -248,7 +257,6 @@
};
roomView.AddChidren(btnFloorAndRoomName);
-
#region 鐜鏁版嵁
var environmentalView = new FrameLayout()
{
@@ -264,7 +272,7 @@
Gravity = Gravity.CenterVertical,
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
- UnSelectedImagePath = "Public/InfoIcon/TempIcon.png",
+ UnSelectedImagePath = "Public/DeviceInfoIcon/TempIcon.png",
};
environmentalView.AddChidren(btnTempIcon);
@@ -287,7 +295,7 @@
Gravity = Gravity.CenterVertical,
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
- UnSelectedImagePath = "Public/InfoIcon/HumidityIcon.png",
+ UnSelectedImagePath = "Public/DeviceInfoIcon/HumidityIcon.png",
};
environmentalView.AddChidren(btnHumidityIcon);
@@ -310,7 +318,7 @@
Gravity = Gravity.CenterVertical,
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
- UnSelectedImagePath = "Public/InfoIcon/Pm25Icon.png",
+ UnSelectedImagePath = "Public/DeviceInfoIcon/Pm25Icon.png",
};
environmentalView.AddChidren(btnPm25Icon);
@@ -335,22 +343,18 @@
Y = Application.GetRealHeight(126),
Width = Application.GetMinRealAverage(58),
Height = Application.GetMinRealAverage(58),
- UnSelectedImagePath = "",
- SelectedImagePath = "Classification/Room/AllCloseIcon.png",
+ UnSelectedImagePath = "Classification/Room/AllCloseIcon.png",
+ Tag = "AllClose",
+ Visible = false
};
roomView.AddChidren(btnAllClose);
-#if DEBUG
- btnAllClose.IsSelected = true;
-#endif
+ LoadEvent_CloseAllFunction(btnAllClose, room);
var btn = new Button()
{
Height = Application.GetRealHeight(20),
};
roomListView.AddChidren(btn);
-
-
- roomViewList.Add(roomView);
roomViewbgColor.MouseUpEventHandler += (sender, e) => {
var view = new RoomPage(room);
@@ -360,10 +364,6 @@
};
}
-
- roomListView.AddChidren(new Button() { Height = Application.GetRealHeight(20) });//澶珮瑙嗗浘锛屽皢瀵艰埅浜嗛伄鎸$殑閮ㄥ垎瀹屾暣鏄剧ず
- #endregion
-
}
/// <summary>
@@ -419,6 +419,7 @@
Height = Application.GetRealWidth(161),
Radius = (uint)Application.GetRealHeight(6),
BackgroundColor = CSS_Color.MainBackgroundColor,
+ Tag = item + "_View",
Y = index % 2 == 1 ? lastY2 : lastY1
};
//楂樺害绋嶉珮鐨剉iew
@@ -466,12 +467,14 @@
int functionCount = 0;
+ int functionOnCount = 0;
switch (item)
{
- case "Light":
+ case ShowFunction.Light:
#region Light
btnName.TextID = StringId.Lights;
functionCount = DB_ResidenceData.residenceData.functionList.lights.Count;
+ functionOnCount = DB_ResidenceData.residenceData.functionList.lights.FindAll((obj) => obj.on_off == "on" ).Count;
Button btnLightPower = new Button()
{
X = Application.GetRealWidth(120),
@@ -480,10 +483,11 @@
Height = Application.GetRealWidth(32),
SelectedImagePath = "Public/PowerOpen.png",
UnSelectedImagePath = "Public/PowerClose.png",
+ IsSelected = functionCount == functionOnCount
};
functionView.AddChidren(btnLightPower);
btnLightPower.MouseUpEventHandler = (sender, e) => {
- LoadEvent_LightsPower(btnLightPower);
+ LoadEvent_SwitchFunction(btnLightPower,item);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) => {
var skipView = new FunctionPage();
@@ -493,10 +497,11 @@
};
#endregion
break;
- case "AC":
+ case ShowFunction.AC:
#region AC
btnName.TextID = StringId.AC;
functionCount = DB_ResidenceData.residenceData.functionList.aCs.Count;
+ functionOnCount = DB_ResidenceData.residenceData.functionList.aCs.FindAll((obj) => obj.on_off == "on" ).Count;
Button btnAcPower = new Button()
{
X = Application.GetRealWidth(120),
@@ -505,10 +510,11 @@
Height = Application.GetRealWidth(32),
SelectedImagePath = "Public/PowerOpen.png",
UnSelectedImagePath = "Public/PowerClose.png",
+ IsSelected = functionCount == functionOnCount
};
functionView.AddChidren(btnAcPower);
btnAcPower.MouseUpEventHandler = (sender, e) => {
- LoadEvent_LightsPower(btnAcPower);
+ LoadEvent_SwitchFunction(btnAcPower, item);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) => {
var skipView = new FunctionPage();
@@ -518,11 +524,11 @@
};
#endregion
break;
- case "Curtain":
+ case ShowFunction.Curtain:
#region Curtain
btnName.TextID = StringId.Curtain;
functionCount = DB_ResidenceData.residenceData.functionList.curtains.Count;
-
+ functionOnCount = DB_ResidenceData.residenceData.functionList.curtains.FindAll((obj) => obj.on_off == "on").Count;
Button btnClose;
btnClose = new Button()
{
@@ -532,6 +538,7 @@
Height = Application.GetRealWidth(32),
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
+ IsSelected = functionCount == functionOnCount
};
functionView.AddChidren(btnClose);
@@ -556,37 +563,46 @@
};
#endregion
break;
- case "FloorHeating":
+ case ShowFunction.FloorHeating:
btnName.TextID = StringId.FloorHeating;
break;
- case "DoorLock":
+ case ShowFunction.DoorLock:
btnName.TextID = StringId.DoorLock;
break;
- case "Electric":
+ case ShowFunction.Electric:
btnName.TextID = StringId.Electric;
break;
- case "EnergyMonitoring":
+ case ShowFunction.EnergyMonitoring:
btnName.TextID = StringId.EnergyMonitoring;
break;
- case "Environmental":
+ case ShowFunction.Environmental:
btnName.TextID = StringId.Environmental;
break;
- case "FreshAir":
+ case ShowFunction.FreshAir:
btnName.TextID = StringId.FreshAir;
break;
- case "Music":
+ case ShowFunction.Music:
btnName.TextID = StringId.Music;
+ //btnFunctionViewBg.MouseUpEventHandler = (sender, e) => {
+ // var musicMain = new HDL_ON.UI.Music.MusicMain();
+ // MainPage.BasePageView.AddChidren(musicMain);
+ // MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ //};
+ var musicMain = new HDL_ON.UI.Music.MusicMain();
+ MainPage.BasePageView.AddChidren(musicMain);
+ musicMain.Show();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
break;
- case "Panel":
+ case ShowFunction.Panel:
btnName.TextID = StringId.Panel;
break;
- case "SecurityMonitoring":
+ case ShowFunction.SecurityMonitoring:
btnName.TextID = StringId.SecurityMonitoring;
break;
- case "Sensor":
+ case ShowFunction.Sensor:
btnName.TextID = StringId.Sensor;
break;
- case "VideoIntercom":
+ case ShowFunction.VideoIntercom:
btnName.TextID = StringId.VideoIntercom;
break;
@@ -601,20 +617,114 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
TextAlignment = TextAlignment.CenterLeft,
- Text = "0/" + functionCount.ToString()
+ Text = functionOnCount + "/" + functionCount,
+ Tag = item + "_onCount"
};
functionView.AddChidren(btnFunctionCount);
-
-
-
-
index++;
}
-
-
-
#endregion
+ }
+
+ #region 鍒囨崲妤煎眰
+ /// <summary>
+ /// 浣忓畢鍒楄〃鐐瑰嚮浜嬩欢
+ /// </summary>
+ void LoadDialog_ChangeFloor()
+ {
+ EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
+ var dialog = new Dialog();
+ var dialogBody = new FrameLayout();
+ dialog.AddChidren(dialogBody);
+ dialogBody.MouseUpEventHandler += (sender1, e1) => {
+ dialog.Close();
+ };
+
+ var dispalyView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(10),
+ Y = Application.GetRealHeight(100),
+ Width = Application.GetRealWidth(160),
+ Height = Application.GetRealHeight(203),
+ BackgroundImagePath = "PersonalCenter/HomeListbg.png",
+ };
+ dialogBody.AddChidren(dispalyView);
+
+ var contentView = new VerticalScrolViewLayout()
+ {
+ X = Application.GetRealWidth(8),
+ Y = Application.GetRealHeight(15),
+ Width = Application.GetRealWidth(150),
+ Height = Application.GetRealHeight(45 * 4),
+ };
+ dispalyView.AddChidren(contentView);
+
+ List<string> chooseList = new List<string>();
+ chooseList.Add(Language.StringByID(StringId.All));
+ chooseList.AddRange(DB_ResidenceData.residenceData.floors);
+
+ foreach (var floor in chooseList)
+ {
+ if (floor != Language.StringByID(StringId.All))
+ {
+ contentView.AddChidren(new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(112),
+ Height = Application.GetRealHeight(1),
+ BackgroundColor = CSS.CSS_Color.BackgroundColor
+ });
+ }
+ var btnHomeName = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(112),
+ Height = Application.GetRealHeight(44),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+ SelectedTextColor = CSS.CSS_Color.MainColor,
+ Text = floor,
+ TextSize = CSS.CSS_FontSize.SubheadingFontSize,
+ IsSelected = btnFloor.Text == floor,
+ IsMoreLines = true,
+ Tag = floor
+ };
+ contentView.AddChidren(btnHomeName);
+
+ btnHomeName.MouseUpEventHandler += (senderH, en) =>
+ {
+ dialog.Close();
+ btnFloor.Text = floor;
+ roomsShowed.Clear();
+ if (floor == Language.StringByID(StringId.All))
+ {
+ roomsShowed.AddRange(DB_ResidenceData.residenceData.rooms);
+ }
+ else
+ {
+ foreach (var room in DB_ResidenceData.residenceData.rooms)
+ {
+ if (room.floor == floor)
+ {
+ roomsShowed.Add(room);
+ }
+ }
+ }
+ LoadRoomRows();
+ };
+ }
+
+ dialog.Show();
+ };
+
+ btnFloor.MouseUpEventHandler = eventHandler;
+ btnFloorDownIcon.MouseUpEventHandler = eventHandler;
+ }
+
+ void LoadEvent_ChangeFloorDisplay()
+ {
}
+ #endregion
}
}
--
Gitblit v1.8.0