From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 958 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 743 insertions(+), 215 deletions(-)
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index bc023c9..7f20439 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>
/// 鎴块棿鍒嗛〉
@@ -22,12 +22,16 @@
/// </summary>
Button btnFuncTitle;
#endregion
-
+ /// <summary>
+ /// 鎴块棿/鍔熻兘鍒嗛〉鍖哄煙
+ /// </summary>
+ PageLayout contentPageView;
#region 鎴块棿鍖哄煙
+ FrameLayout roomPageView;
/// <summary>
/// 鎴块棿鍐呭鏄剧ず鍖哄煙
/// </summary>
- FrameLayout roomContentView;
+ FrameLayout roomFloorChangeView;
#region 鎴块棿搴曢儴鍒囨崲鏄剧ず鍖哄煙
/// <summary>
/// 鎴块棿鍖哄煙锛岄《閮ㄥ尯鍩�
@@ -36,11 +40,11 @@
/// <summary>
/// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
/// </summary>
- Button btnFoorDownIcon;
+ Button btnFloorDownIcon;
/// <summary>
/// 妤煎眰鏄剧ず
/// </summary>
- Button btnFoor;
+ Button btnFloor;
/// <summary>
/// 鏄剧ず鏂瑰紡鍒囨崲鎸夐挳
/// </summary>
@@ -50,18 +54,24 @@
/// 鎴块棿鍒楄〃鍖哄煙
/// </summary>
VerticalScrolViewLayout roomListView;
- /// <summary>
- /// 鎴块棿鍖哄煙闆嗗悎
- /// </summary>
- List<FrameLayout> roomViewList;
+ #endregion
+
+ #region 鍔熻兘鍖哄煙
+ VerticalScrolViewLayout functionsPageView;
+
#endregion
#endregion
+
+
+ List<Room> roomsShowed;
public ClassificationPage()
{
bodyView = this;
+ roomsShowed = new List<Room>();
+ roomsShowed.AddRange(SpatialInfo.CurrentSpatial.RoomList);
}
public void LoadPage()
@@ -99,26 +109,42 @@
TextSize = CSS_FontSize.TextFontSize,
TextColor = CSS_Color.PromptingColor1,
SelectedTextColor = CSS_Color.MainColor,
- TextID = StringId.Devices,
+ TextID = StringId.Functions,
};
topView.AddChidren(btnFuncTitle);
-
#endregion
+ contentPageView = new PageLayout()
+ {
+ Y = Application.GetRealHeight(64),
+ Height = Application.GetRealHeight(667 - 64 - 49 + 30),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ IsShowPoint = false
+ };
+ bodyView.AddChidren(contentPageView);
+ LoadRoomPageView();
+ LoadFunctionPageView();
+ LoadEventList();
+ }
+ /// <summary>
+ /// 鍔犺浇鎴块棿鍒楄〃鐣岄潰
+ /// </summary>
+ void LoadRoomPageView()
+ {
#region 鎴块棿鍖哄煙
+ roomPageView = new FrameLayout();
+ contentPageView.AddChidren(roomPageView);
/// <summary>
/// 鎴块棿鍐呭鏄剧ず鍖哄煙
/// </summary>
- roomContentView = new FrameLayout()
+ roomFloorChangeView = new FrameLayout()
{
- Y = Application.GetRealHeight(64),
Height = Application.GetRealHeight(52),
- BackgroundColor = CSS_Color.MainBackgroundColor,
};
- bodyView.AddChidren(roomContentView);
- #region 鎴块棿搴曢儴鍒囨崲鏄剧ず鍖哄煙
+ roomPageView.AddChidren(roomFloorChangeView);
+ #region 鎴块棿椤堕儴鍒囨崲鏄剧ず鍖哄煙
/// <summary>
/// 鎴块棿鍖哄煙锛岄《閮ㄥ尯鍩�
/// </summary>
@@ -126,11 +152,11 @@
{
Height = Application.GetRealHeight(53),
};
- roomContentView.AddChidren(roomTopView);
+ roomFloorChangeView.AddChidren(roomTopView);
/// <summary>
/// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
/// </summary>
- btnFoorDownIcon = new Button()
+ btnFloorDownIcon = new Button()
{
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
@@ -138,154 +164,87 @@
Y = Application.GetRealHeight(18),
UnSelectedImagePath = "Public/DownIcon.png",
};
- roomContentView.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 = DB_ResidenceData.Instance.CurFloor.roomName,
};
- roomContentView.AddChidren(btnFoor);
+ 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",
- };
- roomContentView.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>
/// 鎴块棿鍒楄〃鍖哄煙
/// </summary>
roomListView = new VerticalScrolViewLayout()
{
- Y = roomContentView.Bottom,
- Height = Application.GetRealHeight(497 + 10+30),
- BackgroundColor = CSS_Color.MainBackgroundColor,
+ Y = roomFloorChangeView.Bottom,
+ Height = Application.GetRealHeight(497 + 10 + 30),
+ //BackgroundColor = CSS_Color.MainBackgroundColor,
};
- bodyView.AddChidren(roomListView);
- /// <summary>
- /// 鎴块棿鍖哄煙闆嗗悎
- /// </summary>
- roomViewList = new List<FrameLayout>();
+ roomPageView.AddChidren(roomListView);
+ LoadRoomRows();
+ roomListView.AddChidren(new Button() { Height = Application.GetRealHeight(20) });//澶珮瑙嗗浘锛屽皢瀵艰埅浜嗛伄鎸$殑閮ㄥ垎瀹屾暣鏄剧ず
+ #endregion
+ LoadDialog_ChangeFloor();
+ }
-#if DEBUG1
- var r = new Room() { sid = "0001", name = "Room-1", floor = "1F", backgroundImage = "Classification/Room/Roombg.png" };
- r.functions.Add(new Function()
- {
- sid = "000000000000000000000000000000000001",
- funcType = FunctionType.AC,
- name = "绌鸿皟",
- roomIdList = new List<string>() { "0001" },
- lastState = "鍒跺喎 涓 18掳C",
- bus_Data = "{" +
- "\"SubnetID\":42" + "," +
- "\"DeviceID\":8" + "," +
- "\"LoopID\":1" +
- "}",
- });
- r.functions.Add(new Dimmer()
- {
- sid = "0001002019101209000025670400010002",
- funcType = FunctionType.Light,
- name = "瀹㈠巺鐏�",
- roomIdList = new List<string>() { "0001" },
- lastState = "20%",
- bus_Data = "{" +
- "\"SubnetID\":111" + "," +
- "\"DeviceID\":2" + "," +
- "\"LoopID\":1" +
- "}",
- });
- r.functions.Add(new MotorCurtain()
- {
- sid = "000000000000000000000000000000000003",
- funcType = FunctionType.Curtain,
- name = "绐楀笜",
- roomIdList = new List<string>() { "0001" },
- lastState = "20%",
- bus_Data = "{" +
- "\"SubnetID\":42" + "," +
- "\"DeviceID\":7" + "," +
- "\"LoopID\":1" +
- "}",
- });
- r.functions.Add(new Function()
- {
- sid = "000000000000000000000000000000000004",
- funcType = FunctionType.FloorHeating,
- name = "鍦扮儹",
- roomIdList = new List<string>() { "0001" },
- lastState = ""
- });
- r.functions.Add(new Light()
- {
- sid = "0001002019101209000025670400010005",
- funcType = FunctionType.Light,
- name = "瀹㈠巺澶х伅",
- roomIdList = new List<string>() { "0001" },
- bus_Data = "{" +
- "\"SubnetID\":111" + "," +
- "\"DeviceID\":6" + "," +
- "\"LoopID\":1" +
- "}",
- });
- r.functions.Add(new RGBLight()
- {
- sid = "0001002019101209000025670500010006",
- funcType = FunctionType.Light,
- name = "瀹㈠巺RGB鐏�",
- roomIdList = new List<string>() { "0001" },
- bus_Data = "{" +
- "\"SubnetID\":222" + "," +
- "\"DeviceID\":222" + "," +
- "\"LoopID\":222" +
- "}",
- });
-
- DB_ResidenceData.residenceData.rooms.Add(r);
-
-#endif
-
-
- foreach (var room in DB_ResidenceData.residenceData.rooms)
+ /// <summary>
+ /// 鍔犺浇鎴块棿鍒楄〃鍖哄煙
+ /// </summary>
+ void LoadRoomRows()
+ {
+ roomListView.RemoveAll();
+ foreach (var room in roomsShowed)
{
var roomView = new FrameLayout()
{
Gravity = Gravity.CenterHorizontal,
Width = Application.GetRealWidth(343),
- Height = Application.GetRealHeight(184),
- Radius = (uint)Application.GetRealHeight(12),
- BorderColor = 0x00000000,
- BorderWidth = 1,
+ Height = Application.GetRealWidth(192),//2020-12-01 鎴块棿鍥剧墖姣斾緥鏀瑰洖16:9
+ Radius = (uint)Application.GetRealWidth(12),
+ Tag = room.roomId,
};
roomListView.AddChidren(roomView);
- var roomViewbg = new Button()
+ var roomViewbg = new ImageView()
{
- UnSelectedImagePath = room.backgroundImage,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealWidth(192),//2020-12-01 鎴块棿鍥剧墖姣斾緥鏀瑰洖16:9
+ //ImagePath = room.backgroundImage,
+ Radius = (uint)Application.GetRealWidth(12),
};
roomView.AddChidren(roomViewbg);
+ //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶
+ ImageUtlis.Current.LoadLocalOrNetworkImages(room.backgroundImage, roomViewbg);
+
var roomViewbgColor = new Button()
{
+ Radius = (uint)Application.GetRealWidth(12),
BackgroundColor = 0x19333333,
};
roomView.AddChidren(roomViewbgColor);
@@ -296,129 +255,698 @@
Y = Application.GetRealHeight(12 - 2),
Width = Application.GetRealWidth(266),
Height = Application.GetRealHeight(22 + 2 + 2),
- Text = room.floor + " " + room.name,
+ Text = room.floorName + room.roomName,
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.MainBackgroundColor,
TextSize = CSS_FontSize.SubheadingFontSize,
};
roomView.AddChidren(btnFloorAndRoomName);
-
#region 鐜鏁版嵁
- var environmentalView = new FrameLayout()
- {
- Y = Application.GetRealHeight(2) + btnFloorAndRoomName.Bottom,
- Height = Application.GetRealHeight(32),
- Tag = "EnvironmentalView",
- };
- topView.AddChidren(environmentalView);
+ //var environmentalView = new FrameLayout()
+ //{
+ // 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/InfoIcon/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/InfoIcon/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/InfoIcon/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),
- Y = Application.GetRealHeight(126),
+ Y = Application.GetRealWidth(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),
+ Height = Application.GetRealWidth(20),
};
roomListView.AddChidren(btn);
+ roomViewbgColor.MouseUpEventHandler += (sender, e) =>
+ {
+ Action ReloadRoomName = () =>
+ {
+ btnFloorAndRoomName.Text = room.floorName + room.roomName;
+ };
- roomViewList.Add(roomView);
+ //鎴块棿鍒犻櫎浜嬩欢
+ Action deleteAction = () =>
+ {
+ roomView.RemoveFromParent();
+ };
- roomViewbgColor.MouseUpEventHandler += (sender, e) => {
- var view = new RoomPage(room);
+ //鎴块棿鑳屾櫙鍥句慨鏀逛簨浠跺洖璋�
+ Action modifyImageAction = () =>
+ {
+ //roomViewbg.ImagePath = room.backgroundImage;
+ ImageUtlis.Current.LoadLocalOrNetworkImages(room.backgroundImage, roomViewbg);
+ };
+
+ var view = new RoomPage(room, ReloadRoomName, deleteAction, modifyImageAction);
MainPage.BasePageView.AddChidren(view);
view.LoadPage();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
}
+ }
- roomListView.AddChidren(new Button() { Height = Application.GetRealHeight(20) });//澶珮瑙嗗浘锛屽皢瀵艰埅浜嗛伄鎸$殑閮ㄥ垎瀹屾暣鏄剧ず
- #endregion
+ /// <summary>
+ /// 鍔犺浇鍔熻兘鍒楄〃鐣岄潰
+ /// </summary>
+ void LoadFunctionPageView()
+ {
+ #region
+ functionsPageView = new VerticalScrolViewLayout()
+ {
+ BackgroundColor = CSS_Color.BackgroundColor,
+ Height = Application.GetRealHeight(667 - 64 - 49 + 20),
+ };
+ contentPageView.AddChidren(functionsPageView);
+
+ FrameLayout functionContentView;
+ functionContentView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(16),
+ Height = Application.GetRealHeight(667 - 64 - 49 + 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 };
+
+ var s1View = new FrameLayout()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(164),
+ };
+ functionContentView.AddChidren(s1View);
+
+ var s2View = new FrameLayout()
+ {
+ X = Application.GetRealWidth(196),
+ Width = Application.GetRealWidth(164),
+ };
+ functionContentView.AddChidren(s2View);
+
+ var lastY1 = Application.GetRealWidth(16);
+ var lastY2 = Application.GetRealWidth(16);
+ var functionContentViewHeight = Application.GetRealWidth(16);
+
+ var functionCategoryCount = 0;
+
+ foreach (var item in DB_ResidenceData.Instance.functionTypeList)
+ {
+ int functionCount = 0;
+ int functionOnCount = 0;
+ switch (item)
+ {
+ case ShowFunction.Light:
+ #region Light
+ functionCount = FunctionList.List.GetLightList().Count;
+ functionOnCount = FunctionList.List.GetLightList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+ #endregion
+ break;
+ case ShowFunction.AC:
+ #region AC
+ functionCount = FunctionList.List.GetAcList().Count;
+ functionOnCount = FunctionList.List.GetAcList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+ #endregion
+ break;
+ case ShowFunction.Curtain:
+ #region Curtain
+ functionCount = FunctionList.List.GetCurtainList().Count;
+ functionOnCount = FunctionList.List.GetCurtainList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+ #endregion
+ break;
+ case ShowFunction.FloorHeating:
+ #region 鍦扮儹
+ functionCount = FunctionList.List.GetFloorHeatingList().Count;
+ functionOnCount = FunctionList.List.GetFloorHeatingList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+ #endregion
+ break;
+ case ShowFunction.DoorLock:
+ break;
+ case ShowFunction.Electric:
+ #region 鐢靛櫒
+ functionCount = FunctionList.List.GetElectricals().Count;
+ functionOnCount = FunctionList.List.GetElectricals().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
+ #endregion
+ break;
+ case ShowFunction.EnergyMonitoring:
+ break;
+ case ShowFunction.Environmental:
+ #region 鐜鏁版嵁
+ functionCount = FunctionList.List.GetEnvirSensorsList().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.curValue.ToString() == "on").Count;
+ break;
+ case ShowFunction.Panel:
+ break;
+ case ShowFunction.SecurityMonitoring:
+ functionCount = 1;
+ break;
+ case ShowFunction.Sensor:
+ functionCount = FunctionList.List.GetArmSensorList().Count;
+ break;
+ case ShowFunction.VideoIntercom:
+ break;
+
+ }
+
+ if(functionCount == 0)
+ {
+ continue;
+ }
+
+ functionCategoryCount++;
+
+ FrameLayout functionView = new FrameLayout()
+ {
+ Height = Application.GetRealWidth(161),
+ Radius = (uint)Application.GetRealWidth(6),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Tag = item + "_View",
+ Y = index % 2 == 1 ? lastY2 : lastY1
+ };
+ //楂樺害绋嶉珮鐨剉iew
+ if (specialList.Contains(index))
+ {
+ functionView.Height = Application.GetRealWidth(204);
+ }
+ if (index % 2 == 1)
+ {
+ lastY2 += functionView.Height + Application.GetRealWidth(16);
+ }
+ else
+ {
+ lastY1 += functionView.Height + Application.GetRealWidth(16);
+ }
+
+ if (index % 2 == 0)
+ {
+ s1View.AddChidren(functionView);
+ }
+ else
+ {
+ s2View.AddChidren(functionView);
+ }
+ functionContentViewHeight = functionView.Bottom;
+
+
+ Button btnName = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Y = Application.GetRealHeight(14),
+ Width = Application.GetRealWidth(120),
+ Height = Application.GetRealHeight(24),
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextAlignment = TextAlignment.CenterLeft,
+ };
+ functionView.AddChidren(btnName);
+
+ if (item != ShowFunction.Environmental && item != ShowFunction.Sensor && item != ShowFunction.VideoIntercom
+ && item != ShowFunction.SecurityMonitoring
+ && functionCount != 0)
+ {
+ Button btnFunctionCount = new Button()
+ {
+ X = Application.GetRealWidth(17) + Application.GetRealWidth(7 * functionCount.ToString().Length),
+ Y = btnName.Bottom,
+ Width = Application.GetRealWidth(120),
+ Height = Application.GetRealHeight(24),
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextAlignment = TextAlignment.CenterLeft,
+ Text = "/" + functionCount,
+ };
+ functionView.AddChidren(btnFunctionCount);
+ Button btnOpenCount = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Y = btnName.Bottom,
+ Width = Application.GetRealWidth(14 * 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);
+ }
+
+
+ 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:
+ #region Light
+ btnName.TextID = StringId.Lights;
+ Button btnLightPower = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ SelectedImagePath = "Public/PowerOpen.png",
+ UnSelectedImagePath = "Public/PowerClose.png",
+ IsSelected = functionOnCount > 0,
+ Tag = item + "_AllControl",
+ };
+ functionView.AddChidren(btnLightPower);
+
+ btnLightPower.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEvent_SwitchFunction(btnLightPower, item, functionView);
+ };
+ functionPageTitleId = StringId.Lights;
+
+ #endregion
+ break;
+ case ShowFunction.AC:
+ #region AC
+ btnName.TextID = StringId.AC;
+ Button btnAcPower = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ SelectedImagePath = "Public/PowerOpen.png",
+ UnSelectedImagePath = "Public/PowerClose.png",
+ Tag = item + "_AllControl",
+ IsSelected = functionOnCount > 0,
+ };
+ functionView.AddChidren(btnAcPower);
+ btnAcPower.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEvent_SwitchFunction(btnAcPower, item, functionView);
+ };
+ functionPageTitleId = StringId.AC;
+ #endregion
+ break;
+ case ShowFunction.Curtain:
+ #region Curtain
+ btnName.TextID = StringId.Curtain;
+ Button btnClose;
+ btnClose = new Button()
+ {
+ X = Application.GetRealWidth(72),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
+ SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
+ IsSelected = !DB_ResidenceData.Instance.GlobalCurtainStatus,
+ };
+ functionView.AddChidren(btnClose);
+
+ Button btnOpen;
+ btnOpen = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png",
+ SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png",
+ IsSelected = DB_ResidenceData.Instance.GlobalCurtainStatus,
+ };
+ functionView.AddChidren(btnOpen);
+ LoadEvent_CurtainSwitch(btnClose, btnOpen, functionView);
+
+ functionPageTitleId = StringId.Curtain;
+ #endregion
+ break;
+ case ShowFunction.FloorHeating:
+ #region 鍦扮儹
+ btnName.TextID = StringId.FloorHeating;
+ Button btnFhPower = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ SelectedImagePath = "Public/PowerOpen.png",
+ UnSelectedImagePath = "Public/PowerClose.png",
+ Tag = item + "_AllControl",
+ IsSelected = functionOnCount > 0
+ };
+ functionView.AddChidren(btnFhPower);
+ btnFhPower.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEvent_SwitchFunction(btnFhPower, item, functionView);
+ };
+ functionPageTitleId = StringId.FloorHeating;
+ #endregion
+ break;
+ case ShowFunction.DoorLock:
+ btnName.TextID = StringId.DoorLock;
+ break;
+ case ShowFunction.Electric:
+ #region 鐢靛櫒
+ btnName.TextID = StringId.Electric;
+ Button btnElectricPower = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = specialList.Contains(index) ? Application.GetRealWidth(160) : Application.GetRealWidth(117),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ SelectedImagePath = "Public/PowerOpen.png",
+ UnSelectedImagePath = "Public/PowerClose.png",
+ Tag = item + "_AllControl",
+ IsSelected = functionOnCount > 0,
+ };
+ functionView.AddChidren(btnElectricPower);
+ btnElectricPower.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEvent_SwitchFunction(btnElectricPower, item, functionView);
+ };
+ functionPageTitleId = StringId.Electric;
+ #endregion
+ break;
+ case ShowFunction.EnergyMonitoring:
+ btnName.TextID = StringId.EnergyMonitoring;
+ break;
+ case ShowFunction.Environmental:
+ #region 鐜鏁版嵁
+ btnName.TextID = StringId.EnvironmentalData;
+ btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+ {
+ var skipView = new EnvironmentalPage();// EnvironmentalSciencePage();
+ MainPage.BasePageView.AddChidren(skipView);
+ skipView.LoadPage();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ };
+ #endregion
+ break;
+ case ShowFunction.FreshAir:
+ btnName.TextID = StringId.FreshAir;
+ break;
+ case ShowFunction.Music:
+ btnName.TextID = StringId.Music;
+ btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+ {
+ var musicMain = new Music.MusicMain();
+ MainPage.BasePageView.AddChidren(musicMain);
+ musicMain.Show();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ };
+ break;
+ case ShowFunction.Panel:
+ btnName.TextID = StringId.Panel;
+ break;
+ case ShowFunction.SecurityMonitoring:
+ btnName.TextID = StringId.SecurityMonitoring;
+ btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+ {
+ HDLCommon.Current.Go2EZvizMonitor(bodyView);
+ };
+ break;
+ case ShowFunction.Sensor:
+ btnName.TextID = StringId.Sensor;
+ functionPageTitleId = StringId.Sensor;
+ break;
+ case ShowFunction.VideoIntercom:
+ btnName.TextID = StringId.VideoIntercom;
+ break;
+
+ }
+ //鐣岄潰璺宠浆--闊充箰璺宠浆鑷繁鐨勭晫闈�--鐜璺宠浆鑷繁鐨勭晫闈�
+ if (item != ShowFunction.Music && item != ShowFunction.Environmental && item != ShowFunction.SecurityMonitoring)
+ {
+ btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
+ {
+ var skipView = new FunctionPage();
+ MainPage.BasePageView.AddChidren(skipView);
+ skipView.LoadPage(functionPageTitleId);
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ };
+ }
+ index++;
+ }
+
+ //if (functionCategoryCount > 4)
+ {
+ //functionContentView.Height = functionContentViewHeight;// Application.GetRealWidth((240 * (functionCategoryCount / 2)));
+ s1View.Height = s2View.Height = functionContentView.Height = functionContentViewHeight+ Application.GetRealWidth(40);
+ }
+
+#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(110),
+ BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
+ };
+ dialogBody.AddChidren(dispalyView);
+
+ var contentView = new VerticalScrolViewLayout()
+ {
+ X = Application.GetRealWidth(8),
+ Y = Application.GetRealHeight(15),
+ Width = Application.GetRealWidth(150),
+ Height = Application.GetRealHeight(45 * 2),
+ ScrollEnabled = false
+ };
+ dispalyView.AddChidren(contentView);
+
+ if (SpatialInfo.CurrentSpatial.FloorList.Count < 2)
+ {
+ }
+ else if (SpatialInfo.CurrentSpatial.FloorList.Count < 3)
+ {
+ dispalyView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(10),
+ Y = Application.GetRealHeight(100),
+ Width = Application.GetRealWidth(160),
+ Height = Application.GetRealHeight(155),
+ BackgroundImagePath = "PersonalCenter/HomeList2bg.png",
+ };
+ dialogBody.AddChidren(dispalyView);
+
+ contentView.Height = Application.GetRealHeight(45 * 3);
+ dispalyView.AddChidren(contentView);
+ }
+ else if (SpatialInfo.CurrentSpatial.FloorList.Count < 4)
+ {
+ dispalyView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(10),
+ Y = Application.GetRealHeight(100),
+ Width = Application.GetRealWidth(160),
+ Height = Application.GetRealHeight(200),
+ BackgroundImagePath = "PersonalCenter/HomeList3bg.png",
+ };
+ dialogBody.AddChidren(dispalyView);
+
+ contentView.Height = Application.GetRealHeight(45 * 4);
+ dispalyView.AddChidren(contentView);
+ }
+ else
+ {
+ dispalyView = new FrameLayout()
+ {
+ X = Application.GetRealWidth(10),
+ Y = Application.GetRealHeight(100),
+ Width = Application.GetRealWidth(160),
+ Height = Application.GetRealHeight(245),
+ BackgroundImagePath = "PersonalCenter/HomeList4bg.png",
+ };
+ dialogBody.AddChidren(dispalyView);
+
+ contentView.Height = Application.GetRealHeight(45 * 5);
+ contentView.ScrollEnabled = true;
+ dispalyView.AddChidren(contentView);
+ }
+
+
+ List<SpatialInfo> chooseList = new List<SpatialInfo>();
+ chooseList.Add(new SpatialInfo() { roomId = "", roomName = Language.StringByID(StringId.All) });
+ foreach (var f in SpatialInfo.CurrentSpatial.FloorList)
+ {
+ chooseList.Add(f);
+ }
+
+ foreach (var floor in chooseList)
+ {
+ if (!string.IsNullOrEmpty( floor.roomId))// != Language.StringByID(StringId.All))
+ {
+ //---鍒嗗壊绾�
+ contentView.AddChidren(new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(112),
+ Height = Application.GetRealHeight(1),
+ BackgroundColor = CSS_Color.BackgroundColor
+ });
+ }
+ var btnHomeName = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(112),
+ Height = Application.GetRealHeight(44),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ SelectedTextColor = CSS_Color.MainColor,
+ Text = floor.roomName,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ IsSelected = floor.roomId == DB_ResidenceData.Instance.ClassificationChooseFloor.roomId,
+ //IsMoreLines = true,
+ };
+ contentView.AddChidren(btnHomeName);
+
+ btnHomeName.MouseUpEventHandler += (senderH, en) =>
+ {
+ dialog.Close();
+ btnFloor.Text = floor.roomName;
+ DB_ResidenceData.Instance.ClassificationChooseFloor = floor;
+ roomsShowed.Clear();
+ if (string.IsNullOrEmpty(floor.roomId))
+ {
+ roomsShowed.AddRange(SpatialInfo.CurrentSpatial.RoomList);
+ }
+ else
+ {
+ foreach (var room in SpatialInfo.CurrentSpatial.RoomList)
+ {
+ if (room.parentId == floor.uid)
+ {
+ roomsShowed.Add(room);
+ }
+ }
+ }
+ LoadRoomRows();
+ };
+ }
+
+ dialog.Show();
+ };
+
+ btnFloor.MouseUpEventHandler = eventHandler;
+ btnFloorDownIcon.MouseUpEventHandler = eventHandler;
+ }
+
+ void LoadEvent_ChangeFloorDisplay()
+ {
}
+#endregion
}
-}
+}
\ No newline at end of file
--
Gitblit v1.8.0