New file |
| | |
| | | using 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 listHouse = UserCenter.HdlResidenceLogic.Current.GetLocalResidenceList(); |
| | | var houseCount = listHouse.Count; |
| | | if (houseCount > 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 house in listHouse)
|
| | | {
|
| | | AddFloor(scrolView, house);
|
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <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 += (sender, e) => |
| | | {
|
| | | RemoveView();
|
| | | HouseAction?.Invoke(house.Id);
|
| | | }; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// RemoveView |
| | | /// </summary> |
| | | private void RemoveView() |
| | | { |
| | | dialogBackground.Close(); |
| | | RemoveFromParent(); |
| | | } |
| | | } |
| | | } |