From acb2b278663952ce555b06a2e821f359225f15e0 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期五, 10 七月 2020 09:41:15 +0800 Subject: [PATCH] 备份 --- ZigbeeApp/Shared/Phone/Category/SelectHouseForm.cs | 145 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 145 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Category/SelectHouseForm.cs b/ZigbeeApp/Shared/Phone/Category/SelectHouseForm.cs new file mode 100755 index 0000000..7c70c74 --- /dev/null +++ b/ZigbeeApp/Shared/Phone/Category/SelectHouseForm.cs @@ -0,0 +1,145 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared.Common; + +namespace Shared.Phone.Category +{ + public class SelectHouseForm : UserCenter.FrameLayoutBase + { + public Action<string> HouseAction; + + Dialog dialogBackground; + /// <summary> + /// Init + /// </summary> + public void Init() + { + dialogBackground = new Dialog + { + BackgroundColor = ZigbeeColor.Current.GXCDailogBackGroundColor + }; + dialogBackground.Show(); + var dialog = new FrameLayout() + { + }; + dialogBackground.AddChidren(dialog); + + dialog.MouseUpEventHandler += (sender, e) => + { + RemoveView(); + }; + + var bg = new Button + { + X = Application.GetRealWidth(35), + Y = Application.GetRealHeight(256), + Width = this.GetPictrueRealSize(449), + Height = this.GetPictrueRealSize(773), + UnSelectedImagePath = "Floor/SelectFloor_Left_4.png" + }; + dialog.AddChidren(bg); + + var changeHomeFL = new FrameLayout() + { + X = Application.GetRealWidth(35), + Y = Application.GetRealHeight(256+23), + Width = this.GetPictrueRealSize(449), + Height = this.GetPictrueRealSize(773 - 23) + }; + dialog.AddChidren(changeHomeFL); + + var changeHomeBtn = new Button() + { + X = Application.GetRealWidth(80), + Width = this.GetPictrueRealSize(350), + Height = this.GetPictrueRealSize(150), + TextColor = ZigbeeColor.Current.GXCTextBlackColor, + TextID = R.MyInternationalizationString.ChangeHome, + TextAlignment = TextAlignment.CenterLeft, + TextSize = 14, + IsBold = true + }; + changeHomeFL.AddChidren(changeHomeBtn); + + var scrolView = new VerticalScrolViewLayout() + { + Y = changeHomeBtn.Bottom, + Width = this.GetPictrueRealSize(449), + Height = this.GetPictrueRealSize(600), + VerticalScrollBarEnabled = false + }; + changeHomeFL.AddChidren(scrolView); + + var houseCount = Config.Instance.HomeFilePathList.Count; + if (Config.Instance.HomeFilePathList.Count > 0) + { + if (houseCount > 5) + { + bg.UnSelectedImagePath = $"Floor/SelectFloor_Left_5.png"; + bg.Height = this.GetPictrueRealSize(150 * 6 + 23); + changeHomeFL.Height = this.GetPictrueRealSize(150 * 6); + scrolView.Height = this.GetPictrueRealSize(150 * 5); + } + else + { + bg.UnSelectedImagePath = $"Floor/SelectFloor_Left_{houseCount}.png"; + bg.Height = this.GetPictrueRealSize(150 * (houseCount + 1) + 23); + changeHomeFL.Height = this.GetPictrueRealSize(150 * (houseCount + 1)); + scrolView.Height = this.GetPictrueRealSize(150 * houseCount); + } + + foreach (var housePath in Config.Instance.HomeFilePathList) + { + var home = UserCenter.HdlResidenceLogic.Current.GetHouseByFilePath(housePath); + if (home == null) + { + continue; + } + AddFloor(scrolView, home); + } + } + } + + /// <summary> + /// AddFloor + /// </summary> + /// <param name="verticalScrolView"></param> + private void AddFloor(VerticalScrolViewLayout verticalScrolView, House house) + { + var frow = new Device.CommonForm.LeftIconButtonRow(449, 150); + frow.Width = this.GetPictrueRealSize(449); + frow.Height = this.GetPictrueRealSize(150); + frow.Tag = house.FileName; + frow.Init("Item/House.png", "Item/HouseSelected.png", house.Name); + verticalScrolView.AddChidren(frow); + if (Config.Instance.HomeId == house.Id) + { + frow.IsSelected = true; + } + + frow.ButtonClickEvent += SelectFloor_MouseUpEvent; + } + + /// <summary> + /// SelectFloor_MouseUpEvent + /// </summary> + /// <param name="sender"></param> + /// <param name="mouseEventArgs"></param> + private void SelectFloor_MouseUpEvent(object sender, MouseEventArgs mouseEventArgs) + { + (sender as Device.CommonForm.LeftIconButtonRow).IsSelected = true; + var home = UserCenter.HdlResidenceLogic.Current.GetHouseByFilePath((sender as Device.CommonForm.LeftIconButtonRow).Tag.ToString()); + RemoveView(); + HouseAction?.Invoke(home.Id); + } + + /// <summary> + /// RemoveView + /// </summary> + private void RemoveView() + { + dialogBackground.Close(); + RemoveFromParent(); + } + } +} -- Gitblit v1.8.0