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/UserCenter/Device/Bind/BindCommonLayout.cs | 345 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 345 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindCommonLayout.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindCommonLayout.cs new file mode 100644 index 0000000..3463398 --- /dev/null +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindCommonLayout.cs @@ -0,0 +1,345 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared.Common; +using ZigBee.Device; + +namespace Shared.Phone.UserCenter.DeviceBind +{ + public class BindCommonLayout : FrameLayout + { + public BindCommonLayout() + { + + } + #region 鈼� 鍙橀噺鐢虫槑__________________________ + /// <summary> + /// 妤煎眰鍥炶皟 + /// </summary> + public Action FloorAction = null; + /// <summary> + /// 閫変腑鐨勬ゼ灞傚洖璋� + /// </summary> + public Action<string, Button> ChooseFloorAction = null; + /// <summary> + /// 閲嶆柊鍔犺浇 + /// </summary> + public Action ReLoadAction = null; + + public FrameLayout topFrameLayout = new FrameLayout { Height = Application.GetRealHeight(184), BackgroundColor = ZigbeeColor.Current.XMTopFrameLayout }; + public FrameLayout midFrameLayout = new FrameLayout { Height = Application.GetRealHeight(1925 - 184), BackgroundColor = ZigbeeColor.Current.XMMidFrameLayout }; + + public FrameLayout bottomRadiusFrameLayout = new FrameLayout() + { + Height = Application.GetRealHeight(100), + Y = Application.GetRealHeight(930), + Radius = 17, + BackgroundColor = ZigbeeColor.Current.XMWhite, + }; + + public FrameLayout titleFrameLayout = new FrameLayout + { + Y = Application.GetRealHeight(92), + X = Application.GetRealWidth(161), + Width = Application.GetRealWidth(1080 - 161),//919 + Height = Application.GetRealHeight(69), + }; + public Button btnTitle = new Button + { + TextAlignment = TextAlignment.CenterLeft, + TextColor = Shared.Common.ZigbeeColor.Current.XMTopTitleText, + Width = Application.GetRealWidth(1080 - 161),//919 + Height = Application.GetRealWidth(69), + TextSize = 17, + IsBold = true, + //X = Application.GetRealWidth(161 - 116), + }; + /// <summary> + /// 鏍囬杩斿洖甯冨眬 + /// </summary> + public FrameLayout btnBackFrameLayout = new FrameLayout + { + Width = Application.GetRealWidth(58 * 2),//116 + }; + + /// <summary> + /// 鏍囬杩斿洖鎸夐敭 + /// </summary> + public Button btnBack = new Button + { + Height = Application.GetRealHeight(51), + Width = Application.GetRealWidth(30), + X = Application.GetRealWidth(58), + Y = Application.GetRealHeight(98), + UnSelectedImagePath = "DoorLock/Left.png", + }; + + /// <summary> + /// 鏍囬涓嬬嚎 + /// </summary> + public Button btnTitleLine = new Button + { + Y = Application.GetRealHeight(181), + Height = 1, + BackgroundColor = Shared.Common.ZigbeeColor.Current.XMTitleLine, + }; + #endregion + + /// <summary> + /// 椤堕儴甯冨眬 + /// </summary> + /// <param name="frameLayout"></param> + public void TopFrameLayout(FrameLayout frameLayout, string titleText) + { + this.AddChidren(topFrameLayout); + topFrameLayout.AddChidren(btnBackFrameLayout); + topFrameLayout.AddChidren(titleFrameLayout); + topFrameLayout.AddChidren(btnTitleLine); + btnBackFrameLayout.AddChidren(btnBack); + titleFrameLayout.AddChidren(btnTitle); + btnTitle.Text = titleText; + } + /// <summary> + /// 涓儴甯冨眬 + /// </summary> + /// <param name="frameLayout"></param> + public void MidFrameLayout(FrameLayout frameLayout) + { + //midFrameLayout.BackgroundColor = Shared.Common.ZigbeeColor.Current.GXCBackgroundColor; + midFrameLayout.Y = topFrameLayout.Bottom; + this.AddChidren(midFrameLayout); + } + + /// <summary> + /// 搴曢儴甯冨眬 + /// </summary> + /// <param name="frameLayout"></param> + public void BottomFrameLayout(FrameLayout frameLayout) + { + var bottomFrameLayout1 = new FrameLayout() + { + Height = Application.GetRealHeight(806 - 50), + Y = Application.GetRealHeight(930 + 48), + BackgroundColor = ZigbeeColor.Current.XMWhite, + }; + this.midFrameLayout.AddChidren(bottomFrameLayout1); + } + + /// <summary> + /// 鏄剧ず閲嶆柊鍔犺浇鐨勭晫闈�(涓昏鏄敤鍦ㄧ晫闈㈠姞杞介敊璇椂锛屽啀娆″姞杞�) + /// </summary> + public void ShowReLoadView() + { + var frame = new FrameLayout(); + frame.BackgroundColor = UserCenterColor.Current.White; + frame.Tag = "ReLoadView"; + this.midFrameLayout.AddChidren(frame); + + //閲嶆柊鍔犺浇 + var btnReLoad = new BottomClickButton(); + btnReLoad.Gravity = Gravity.Center; + btnReLoad.TextID = R.MyInternationalizationString.uDoReload; + frame.AddChidren(btnReLoad); + btnReLoad.ButtonClickEvent += (sender, e) => + { + ReLoadAction?.Invoke(); + ReLoadAction = null; + }; + } + + /// <summary> + /// 娣诲姞妤煎眰UI + /// </summary> + public void BindDownFrameLayout(FrameLayout frameLayout, Panel curControlDev, Dictionary<string, string> dicFloorList, ref Button btnFloorText) + { + var btnAddFrameLayout = new FrameLayout + { + X = Application.GetRealWidth(619), + }; + this.titleFrameLayout.AddChidren(btnAddFrameLayout); + + btnFloorText = new Button + { + Width = Application.GetRealWidth(300 - 69 - 58), + TextColor = Shared.Common.ZigbeeColor.Current.XMBlack, + TextSize = 14, + IsBold = true, + TextAlignment = TextAlignment.CenterRight, + }; + btnAddFrameLayout.AddChidren(btnFloorText); + + var btnBindDownFrameLayout = new FrameLayout + { + Width = Application.GetMinReal(69 + 58), + X = Application.GetRealWidth(300 - 69 - 58), + }; + btnAddFrameLayout.AddChidren(btnBindDownFrameLayout); + + var btnBindDown = new Button + { + Height = Application.GetMinReal(69), + Width = Application.GetMinReal(69), + UnSelectedImagePath = "BindPic/BindDown.png", + Gravity = Gravity.CenterVertical, + }; + btnBindDownFrameLayout.AddChidren(btnBindDown); + + EventHandler<MouseEventArgs> eHandlerBindDown = (sender, e) => + { + if (dicFloorList == null) + { + dicFloorList = new Dictionary<string, string>(); + } + SideslipFramelayout(curControlDev, dicFloorList); + }; + btnBindDown.MouseDownEventHandler += eHandlerBindDown; + btnBindDownFrameLayout.MouseDownEventHandler += eHandlerBindDown; + if (Common.Config.Instance.Home.FloorDics.Count == 0) + { + btnAddFrameLayout.Width = 0; + } + else + { + btnAddFrameLayout.Width = Application.GetRealWidth(300); + } + } + + /// <summary> + /// 妤煎眰閫夋嫨鐨勪晶杈规爮 + /// </summary> + void SideslipFramelayout(Panel curControlDev, Dictionary<string, string> dicFloorList) + { + var dialog = new Dialog + { + }; + dialog.Show(); + + var flMain = new FrameLayout { BackgroundColor = 0x00000000 }; + dialog.AddChidren(flMain); + flMain.MouseUpEventHandler += (sender11, e11) => + { + dialog.Close(); + }; + + var sidelipFrameLayout = new FrameLayout() + { + Width = Application.GetMinReal(449), + Y = Application.GetRealHeight(161), + X = Application.GetRealWidth(596), + BackgroundImagePath = "DoorLock/SideslipPic.png", + }; + flMain.AddChidren(sidelipFrameLayout); + + var btnSelectFloor = new Button() + { + Width = Application.GetRealWidth(200), + Height = Application.GetRealHeight(58), + X = Application.GetRealWidth(81), + Y = Application.GetRealHeight(81), + TextColor = Shared.Common.ZigbeeColor.Current.XMBlack, + TextSize = 14, + IsBold = true, + TextAlignment = TextAlignment.CenterLeft, + TextID = R.MyInternationalizationString.SelectFloor, + }; + sidelipFrameLayout.AddChidren(btnSelectFloor); + + var sidelipVerticalScrolViewLayout = new VerticalScrolViewLayout() + { + Y = btnSelectFloor.Bottom + Application.GetRealHeight(45), + Height = Application.GetRealHeight(600), + }; + sidelipFrameLayout.AddChidren(sidelipVerticalScrolViewLayout); + + Button oldbutton = null; + Button oldbuttonText = null; + int count = 0; + foreach (var floorId in dicFloorList.Keys) + { + var rowFrameLayout = new RowLayout() + { + Height = Application.GetRealHeight(152), + LineColor = Shared.Common.ZigbeeColor.Current.XMRowLine, + X = Application.GetRealWidth(81), + }; + sidelipVerticalScrolViewLayout.AddChidren(rowFrameLayout); + + var btnAllMethod = new Button() + { + Width = Application.GetMinReal(81), + Height = Application.GetMinReal(81), + UnSelectedImagePath = "Floor/Floor.png", + SelectedImagePath = "Floor/FloorSelected.png", + Gravity = Gravity.CenterVertical, + }; + rowFrameLayout.AddChidren(btnAllMethod); + + var btnMethodText = new Button() + { + Width = Application.GetRealWidth(311), + Height = Application.GetRealHeight(58), + X = Application.GetRealWidth(92), + Gravity = Gravity.CenterVertical, + TextColor = Shared.Common.ZigbeeColor.Current.XMGray3, + TextSize = 14, + TextAlignment = TextAlignment.CenterLeft, + Text = dicFloorList[floorId], + }; + rowFrameLayout.AddChidren(btnMethodText); + + if (curControlDev.currentSelectFloorId == floorId) + { + btnAllMethod.IsSelected = true; + btnAllMethod.IsBold = true; + btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; + } + + EventHandler<MouseEventArgs> hander = (sender, e) => + { + if (curControlDev.currentSelectFloorId == floorId) + { + return; + } + curControlDev.currentSelectFloorId = floorId; + curControlDev.ReSave(); + if (!btnMethodText.IsSelected) + { + if (oldbutton != null) + { + oldbutton.IsSelected = false; + } + if (oldbuttonText != null) + { + oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMGray3; + } + oldbutton = btnMethodText; + oldbuttonText = btnMethodText; + btnMethodText.IsSelected = true; + oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; + oldbuttonText.IsBold = true; + } + + int index = 0; + dialog.Close(); + ChooseFloorAction?.Invoke(floorId, btnMethodText); + }; + btnAllMethod.MouseUpEventHandler += hander; + rowFrameLayout.MouseUpEventHandler += hander; + btnMethodText.MouseUpEventHandler += hander; + count++; + } + + if (count == 0) + { + sidelipFrameLayout.Height = 0; + } + else if (count <= 4 && count > 0) + { + sidelipFrameLayout.Height = Application.GetRealHeight(180) + count * Application.GetRealHeight(150); + } + else + { + sidelipFrameLayout.Height = Application.GetMinReal(780); + } + } + } +} \ No newline at end of file -- Gitblit v1.8.0