using System;
using System.Collections.Generic;
using HDL_ON.Entity;
using HDL_ON.UI;
using HDL_ON.UI.CSS;
using Shared;
namespace HDL_ON.UI
{
public partial class ClassificationPage : FrameLayout
{
#region 控件列表
static ClassificationPage bodyView;
#region 顶部控件
///
/// 房间分页
///
Button btnRoomTilte;
///
/// 功能分类
///
Button btnFuncTitle;
#endregion
///
/// 房间/功能分页区域
///
PageLayout contentPageView;
#region 房间区域
FrameLayout roomPageView;
///
/// 房间内容显示区域
///
FrameLayout roomFloorChangeView;
#region 房间底部切换显示区域
///
/// 房间区域,顶部区域
///
FrameLayout roomTopView;
///
/// 楼层选择下拉图标
///
Button btnFloorDownIcon;
///
/// 楼层显示
///
Button btnFloor;
///
/// 显示方式切换按钮
///
Button btnSwitchDipaly;
#endregion
///
/// 房间列表区域
///
VerticalScrolViewLayout roomListView;
#endregion
#region 功能区域
VerticalScrolViewLayout functionsPageView;
#endregion
#endregion
List roomsShowed;
public ClassificationPage()
{
bodyView = this;
roomsShowed = new List();
roomsShowed.AddRange(DB_ResidenceData.rooms);
}
public void LoadPage()
{
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
#region top
FrameLayout topView = new FrameLayout()
{
Height = Application.GetRealHeight(64),
BackgroundColor = CSS_Color.TopViewColor,
};
bodyView.AddChidren(topView);
btnRoomTilte = new Button()
{
Y = Application.GetRealHeight(30),
Width = Application.GetRealWidth(170),
Height = Application.GetRealHeight(25),
TextAlignment = TextAlignment.CenterRight,
TextSize = CSS_FontSize.HeadlineFontSize,
TextColor = CSS_Color.PromptingColor1,
SelectedTextColor = CSS_Color.MainColor,
TextID = StringId.Rooms,
IsSelected = true
};
topView.AddChidren(btnRoomTilte);
btnFuncTitle = new Button()
{
X = Application.GetRealWidth(209),
Y = Application.GetRealHeight(30),
Width = Application.GetRealWidth(170),
Height = Application.GetRealHeight(25),
TextAlignment = TextAlignment.CenterLeft,
TextSize = CSS_FontSize.TextFontSize,
TextColor = CSS_Color.PromptingColor1,
SelectedTextColor = CSS_Color.MainColor,
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();
}
///
/// 加载房间列表界面
///
void LoadRoomPageView()
{
#region 房间区域
roomPageView = new FrameLayout();
contentPageView.AddChidren(roomPageView);
///
/// 房间内容显示区域
///
roomFloorChangeView = new FrameLayout()
{
Height = Application.GetRealHeight(52),
};
roomPageView.AddChidren(roomFloorChangeView);
#region 房间底部切换显示区域
///
/// 房间区域,顶部区域
///
roomTopView = new FrameLayout()
{
Height = Application.GetRealHeight(53),
};
roomFloorChangeView.AddChidren(roomTopView);
///
/// 楼层选择下拉图标
///
btnFloorDownIcon = new Button()
{
Width = Application.GetMinRealAverage(16),
Height = Application.GetMinRealAverage(16),
X = Application.GetRealWidth(16),
Y = Application.GetRealHeight(18),
UnSelectedImagePath = "Public/DownIcon.png",
};
roomFloorChangeView.AddChidren(btnFloorDownIcon);
///
/// 楼层显示
///
btnFloor = new Button()
{
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 = DB_ResidenceData.residenceData.CurFoor,
};
roomFloorChangeView.AddChidren(btnFloor);
///
/// 显示方式切换按钮
///
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
///
/// 房间列表区域
///
roomListView = new VerticalScrolViewLayout()
{
Y = roomFloorChangeView.Bottom,
Height = Application.GetRealHeight(497 + 10 + 30),
//BackgroundColor = CSS_Color.MainBackgroundColor,
};
roomPageView.AddChidren(roomListView);
LoadRoomRows();
roomListView.AddChidren(new Button() { Height = Application.GetRealHeight(20) });//太高视图,将导航了遮挡的部分完整显示
#endregion
LoadDialog_ChangeFloor();
}
///
/// 加载房间列表区域
///
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.GetRealWidth(12),
Tag = room.sid,
};
roomListView.AddChidren(roomView);
var roomViewbg = new ImageView()
{
Width = Application.GetRealWidth(343),
Height = Application.GetRealHeight(184),
ImagePath = room.backgroundImage,
Radius = (uint)Application.GetRealWidth(12),
};
roomView.AddChidren(roomViewbg);
var roomViewbgColor = new Button()
{
Radius = (uint)Application.GetRealWidth(12),
BackgroundColor = 0x19333333,
};
roomView.AddChidren(roomViewbgColor);
var btnFloorAndRoomName = new Button()
{
X = Application.GetRealWidth(16),
Y = Application.GetRealHeight(12 - 2),
Width = Application.GetRealWidth(266),
Height = Application.GetRealHeight(22 + 2 + 2),
Text = room.floorName + room.name,
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",
};
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);
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);
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);
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);
#endregion
var btnAllClose = new Button()
{
X = Application.GetRealWidth(282),
Y = Application.GetRealHeight(126),
Width = Application.GetMinRealAverage(58),
Height = Application.GetMinRealAverage(58),
UnSelectedImagePath = "Classification/Room/AllCloseIcon.png",
Tag = "AllClose",
Visible = false
};
roomView.AddChidren(btnAllClose);
LoadEvent_CloseAllFunction(btnAllClose, room);
var btn = new Button()
{
Height = Application.GetRealHeight(20),
};
roomListView.AddChidren(btn);
roomViewbgColor.MouseUpEventHandler += (sender, e) =>
{
var view = new RoomPage(room);
MainPage.BasePageView.AddChidren(view);
view.LoadPage();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
}
}
///
/// 加载功能列表界面
///
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 specialList = new List() { 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 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),
Radius = (uint)Application.GetRealWidth(6),
BackgroundColor = CSS_Color.MainBackgroundColor,
Tag = item + "_View",
Y = index % 2 == 1 ? lastY2 : lastY1
};
//高度稍高的view
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);
}
Button btnFunctionViewBg;
btnFunctionViewBg = new Button()
{
Height = Application.GetRealWidth(161),
UnSelectedImagePath = "FunctionIcon/FunctionBg/" + item + "FunctionBg.png",
};
functionView.AddChidren(btnFunctionViewBg);
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);
switch (item)
{
case ShowFunction.Light:
#region Light
btnName.TextID = StringId.Lights;
functionCount = DB_ResidenceData.functionList.lights.Count;
functionOnCount = DB_ResidenceData.functionList.lights.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
{
var skipView = new FunctionPage();
MainPage.BasePageView.AddChidren(skipView);
skipView.LoadPage(StringId.Lights);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
#endregion
break;
case ShowFunction.AC:
#region AC
btnName.TextID = StringId.AC;
functionCount = DB_ResidenceData.functionList.aCs.Count;
functionOnCount = DB_ResidenceData.functionList.aCs.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
{
var skipView = new FunctionPage();
MainPage.BasePageView.AddChidren(skipView);
skipView.LoadPage(StringId.AC);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
#endregion
break;
case ShowFunction.Curtain:
#region Curtain
btnName.TextID = StringId.Curtain;
functionCount = DB_ResidenceData.functionList.curtains.Count;
functionOnCount = DB_ResidenceData.functionList.curtains.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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",
Tag = item + "_AllControl",
IsSelected = functionOnCount > 0
};
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",
};
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;
};
#endregion
break;
case ShowFunction.FloorHeating:
#region 地热
btnName.TextID = StringId.FloorHeating;
functionCount = DB_ResidenceData.functionList.floorHeatings.Count;
functionOnCount = DB_ResidenceData.functionList.floorHeatings.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
{
var skipView = new FunctionPage();
MainPage.BasePageView.AddChidren(skipView);
skipView.LoadPage(StringId.FloorHeating);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
#endregion
break;
case ShowFunction.DoorLock:
btnName.TextID = StringId.DoorLock;
break;
case ShowFunction.Electric:
#region 电器
btnName.TextID = StringId.Electric;
functionCount = DB_ResidenceData.functionList.electricals.Count;
functionOnCount = DB_ResidenceData.functionList.electricals.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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);
};
btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
{
var skipView = new FunctionPage();
MainPage.BasePageView.AddChidren(skipView);
skipView.LoadPage(StringId.Electric);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
#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 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;
functionCount = Music.A31MusicModel.A31MusicModelList.Count;
functionOnCount = Music.A31MusicModel.A31MusicModelList.FindAll((obj) => obj.trait_on_off.value.ToString() == "on").Count;
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;
break;
case ShowFunction.Sensor:
btnName.TextID = StringId.Sensor;
break;
case ShowFunction.VideoIntercom:
btnName.TextID = StringId.VideoIntercom;
break;
}
if (item != ShowFunction.Environmental && functionCount != 0)
{
Button btnFunctionCount = new Button()
{
X = Application.GetRealWidth(16)+ 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(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 - 4 - 2) / 2) + 20);
}
#endregion
}
#region 切换楼层
///
/// 住宅列表点击事件
///
void LoadDialog_ChangeFloor()
{
EventHandler 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 (DB_ResidenceData.residenceData.floors.Count < 2)
{
}
else if (DB_ResidenceData.residenceData.floors.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 (DB_ResidenceData.residenceData.floors.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 chooseList = new List();
chooseList.Add(Language.StringByID(StringId.All));
foreach (var f in DB_ResidenceData.residenceData.floors)
{
chooseList.Add(f.name);
}
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.rooms);
}
else
{
foreach (var room in DB_ResidenceData.rooms)
{
if (room.floorName == floor)
{
roomsShowed.Add(room);
}
}
}
LoadRoomRows();
};
}
dialog.Show();
};
btnFloor.MouseUpEventHandler = eventHandler;
btnFloorDownIcon.MouseUpEventHandler = eventHandler;
}
void LoadEvent_ChangeFloorDisplay()
{
}
#endregion
}
}