From a0b77501012265c4638c9f49ccfd1e6cd0f71a45 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 09 三月 2023 18:44:00 +0800 Subject: [PATCH] 2023年03月09日18:43:53 --- HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs | 235 ++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 146 insertions(+), 89 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs index b6922dc..1a58e4d 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs @@ -44,6 +44,10 @@ /// </summary> private Button btnCell; /// <summary> + /// 鐢甸噺杩涘害鏉� + /// </summary> + private DiyArcSeekBar cellDiyArcSeekBar; + /// <summary> ///鏀惰棌鍥炬爣 /// </summary> private Button btnCollectIcon; @@ -55,10 +59,6 @@ /// 瀹炴椂瑙嗛 /// </summary> private CustomFrameLayout rtvFL; - /// <summary> - /// 涓�閿紑閿� - /// </summary> - private CustomFrameLayout openFL; /// <summary> /// 涓存椂瀵嗙爜 /// </summary> @@ -72,6 +72,10 @@ /// 琛ㄧず鏉ヨ嚜閭d釜鐣岄潰 /// </summary> private Comerom Comerom; + /// <summary> + /// 鍒犻櫎璁惧鍚庨渶瑕佹洿鏂扮晫闈㈢殑鍥炶皟 + /// </summary> + public Action action; #endregion @@ -81,12 +85,13 @@ /// <param name="function">璁惧</param> /// <param name="btnDeviceName">涓婁竴绾х晫闈㈢殑璁惧鍚嶅瓧鎺т欢</param> /// <param name="btnRoomName">涓婁竴绾х晫闈㈢殑鎴块棿鍚嶅瓧鎺т欢</param> - public VideoDoorLockPage(Function function, Button btnDeviceName, Button btnRoomName, Comerom comerom) + public VideoDoorLockPage(Function function, Button btnDeviceName, Button btnRoomName, Comerom comerom, Action action) { this.device = function; this.btnDeviceName = btnDeviceName; this.btnRoomName = btnRoomName; this.Comerom = comerom; + this.action = action; } @@ -95,10 +100,15 @@ //鍒濆鍖朥I this.InitUI(); //鍒濆鍖栦簨浠� - this.EventListener (); + this.EventListener(); + //璇诲彇鏁版嵁 + this.ReadData(); + } + + /// <summary> /// 鍒濆鍖栫晫闈� /// </summary> @@ -108,16 +118,16 @@ this.BackgroundColor = MusicColor.ViewColor; this.topView = new TopView(); this.topView.setBtn.Visible = true; - this.topView.topNameBtn.TextID =StringId.shipinmensuo; + this.topView.topNameBtn.TextID = StringId.shipinmensuo; this.AddChidren(topView.TopFLayoutView()); - var middleFl=new FrameLayout + var middleFl = new FrameLayout { Y = topView.fLayout.Bottom, Height = Application.GetRealHeight(H_W.H - H_W.T_Height), }; this.AddChidren(middleFl); - var whiteFl = new FrameLayout + var whiteFl = new FrameLayout { Y = Application.GetRealHeight(24), X = Application.GetRealWidth(24), @@ -128,48 +138,6 @@ }; middleFl.AddChidren(whiteFl); - - btnCurrDeviceName= new Button - { - TextSize = TextSize.Text24, - TextColor = MusicColor.Text18Color, - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(33), - Y = Application.GetRealHeight(16), - X = Application.GetRealWidth(16), - Text = this.device.name, - TextAlignment=TextAlignment.CenterLeft, - }; - whiteFl.AddChidren(btnCurrDeviceName); - - btnCurrDeviceRoom = new Button - { - TextSize = TextSize.Text12, - TextColor = MusicColor.MusicNoTxetColor, - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(33), - Y = btnCurrDeviceName.Bottom+ Application.GetRealHeight(4), - X = Application.GetRealWidth(16), - Text = this.device.GetRoomListName(), - TextAlignment = TextAlignment.CenterLeft, - }; - whiteFl.AddChidren(btnCurrDeviceRoom); - btnCurrDeviceRoom.Width=btnCurrDeviceName.GetTextWidth(); - - btnCell = new Button - { - TextSize = TextSize.Text10, - TextColor = MusicColor.TextColor, - Y = Application.GetRealHeight(43), - X = btnCurrDeviceRoom.Right+Application.GetRealWidth(17), - //Text ="60"+"%", - //TextAlignment = TextAlignment.Center, - Width = Application.GetRealWidth(36), - Height = Application.GetRealWidth(36), - UnSelectedImagePath ="FunctionIcon/DoorLock/Cell.png", - }; - whiteFl.AddChidren(btnCell); - btnCollectIcon = new Button { X = Application.GetRealWidth(264), @@ -178,10 +146,84 @@ Height = Application.GetRealWidth(40), UnSelectedImagePath = "MusicIcon/collect.png", SelectedImagePath = "MusicIcon/collectSelected.png", - IsSelected= this.device.collect, + IsSelected = this.device.collect, Name = "collect" }; whiteFl.AddChidren(btnCollectIcon); + + btnCurrDeviceName = new Button + { + TextSize = TextSize.Text24, + TextColor = MusicColor.Text18Color, + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(33), + Y = Application.GetRealHeight(16), + X = Application.GetRealWidth(16), + Text = this.device.name, + TextAlignment = TextAlignment.CenterLeft, + }; + whiteFl.AddChidren(btnCurrDeviceName); + + btnCurrDeviceName.Width = btnCurrDeviceName.GetTextWidth(); + if (btnCurrDeviceName.GetTextWidth() > btnCollectIcon.X) + { + btnCurrDeviceName.Width = btnCollectIcon.X; + } + btnCurrDeviceRoom = new Button + { + TextSize = TextSize.Text12, + TextColor = MusicColor.MusicNoTxetColor, + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(17), + Y = btnCurrDeviceName.Bottom + Application.GetRealHeight(4), + X = Application.GetRealWidth(16), + Text = this.device.GetRoomListName(), + TextAlignment = TextAlignment.CenterLeft, + }; + whiteFl.AddChidren(btnCurrDeviceRoom); + btnCurrDeviceRoom.Width = btnCurrDeviceRoom.GetTextWidth(); + + var cellFrame = new FrameLayout + { + X = btnCurrDeviceRoom.Right + Application.GetRealWidth(20), + Y = btnCurrDeviceName.Bottom + Application.GetRealHeight(5), + Width = Application.GetRealWidth(30), + Height = Application.GetRealHeight(16), + }; + whiteFl.AddChidren(cellFrame); + + + + cellDiyArcSeekBar = new DiyArcSeekBar + { + X = Application.GetRealWidth(3), + Y = Application.GetRealHeight(3), + Width = cellFrame.Width + Application.GetRealWidth(-6), + Height = cellFrame.Height + Application.GetRealHeight(-6), + Progress = 60, + ProgressBarColor = MusicColor.MusicNoTxetColor, + MaxValue = 100, + MinValue = 0, + + //IsCanMove = false, + //IsCanScrolled=false, + }; + //cellFrame.AddChidren(cellDiyArcSeekBar); + + btnCell = new Button + { + TextSize = TextSize.Text10, + TextColor = MusicColor.TextColor, + Text = "60" + "%", + TextAlignment = TextAlignment.Center, + UnSelectedImagePath = "FunctionIcon/DoorLock/Cell.png", + }; + cellFrame.AddChidren(btnCell); + + + + + //闂ㄩ攣鐘舵�� btnDoorLockIcon = new Button { @@ -193,12 +235,12 @@ SelectedImagePath = "FunctionIcon/DoorLock/UnLocking.png", }; whiteFl.AddChidren(btnDoorLockIcon); - + int heightY = btnDoorLockIcon.Bottom + Application.GetRealHeight(70); //瀹炴椂瑙嗛 rtvFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout); whiteFl.AddChidren(rtvFL); - rtvFL.Y = btnDoorLockIcon.Bottom+ Application.GetRealHeight(45); - rtvFL.X = Application.GetRealWidth(68); + rtvFL.Y = heightY; + rtvFL.X = Application.GetRealWidth(41); rtvFL.AddImageView(); rtvFL.AddTextButtonView(); rtvFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/RTV.png"; @@ -206,32 +248,24 @@ //鍘嗗彶璁板綍 recordFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout); whiteFl.AddChidren(recordFL); - recordFL.Y = btnDoorLockIcon.Bottom + Application.GetRealHeight(45); - recordFL.X = rtvFL.Right + Application.GetRealHeight(CustomFrameLayout.interval); + recordFL.Y = heightY; + recordFL.X = rtvFL.Right + Application.GetRealWidth(CustomFrameLayout.interval); recordFL.AddImageView(); recordFL.AddTextButtonView(); recordFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/HistoryList.png"; recordFL.GetTextButton().TextID = StringId.lishijilu; - //涓�閿紑閿� - openFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout); - whiteFl.AddChidren(openFL); - openFL.X = rtvFL.X; - openFL.Y = rtvFL.Bottom+Application.GetRealHeight(14); - openFL.AddImageView(); - openFL.AddTextButtonView(); - openFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/OneOpenLock.png"; - openFL.GetTextButton().TextID = StringId.yijiankaisuo; //涓存椂瀵嗙爜 pswFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout); whiteFl.AddChidren(pswFL); - pswFL.X = recordFL.X; - pswFL.Y = rtvFL.Bottom + Application.GetRealHeight(14); + pswFL.Y = heightY; + pswFL.X = recordFL.Right + Application.GetRealWidth(CustomFrameLayout.interval); pswFL.AddImageView(); pswFL.AddTextButtonView(); pswFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/OneOpenLock.png"; pswFL.GetTextButton().TextID = StringId.linshimima1; - + #endregion + } /// <summary> @@ -261,7 +295,7 @@ this.btnRoomName.Text = this.device.GetRoomListName(); this.topView.topNameBtn.Text = this.device.name; this.btnCurrDeviceName.Text = this.device.name; - this.btnCurrDeviceRoom.Text= this.device.GetRoomListName(); + this.btnCurrDeviceRoom.Text = this.device.GetRoomListName(); ////浠庢柊璁$畻瀹藉害 //this.btnDeviceName.Text = btnDeviceName.Text; @@ -272,27 +306,54 @@ ////鍥炶皟浜嬩欢 //this.SettionFinishEvent?.Invoke(); + }, () => + { + //瑙g粦璁惧鍚� + this.RemoveFromParent(); + this.action?.Invoke(); }); MainPage.BasePageView.AddChidren(infoView); infoView.LoadPage(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; //鏀惰棌 - btnCollectIcon.MouseUpEventHandler += (sender, e) => + this.btnCollectIcon.MouseUpEventHandler += (sender, e) => { btnCollectIcon.IsSelected = this.device.collect = !btnCollectIcon.IsSelected; this.device.CollectFunction(); }; //瀹炴椂瑙嗛 - rtvFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); - //涓�閿紑閿� - openFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); - //涓存椂瀵嗙爜 - pswFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); - //鍘嗗彶璁板綍 - recordFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); - + this.rtvFL.SetClickListener((fl, btnStateImage, btnStateText) => + { + }); + //涓存椂瀵嗙爜 + this.pswFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); + //鍘嗗彶璁板綍 + this.recordFL.SetClickListener((fl, btnStateImage, btnStateText) => { }); + + + } + /// <summary> + /// 鍒濆鏁版嵁 + /// </summary> + private void ReadData() + { + new System.Threading.Thread(() => + { + HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.Send.Currnet.GetCellValue(this.device, (value) => + { + Application.RunOnMainThread(() => + { + //this.cellDiyArcSeekBar.Progress = i; + //鏇存柊鐢甸噺鍊� + this.btnCell.Text = value + "%"; + }); + + }); + + }) + { IsBackground = true }.Start(); } } @@ -301,11 +362,11 @@ /// </summary> class CustomFrameLayout : FrameLayout { - public const int widthFrameLayout = 74; - public const int heightFrameLayout = 70; - public const int yFrameLayout = 353; - public const int xFrameLayout = 68; - public const int interval = 47;//琛屼腑鐨勫垪闂撮殧鍊� + public const int widthFrameLayout = 48; + public const int heightFrameLayout = 53; + public const int yFrameLayout = 378; + public const int xFrameLayout = 41; + public const int interval = 51;//琛屼腑鐨勫垪闂撮殧鍊� public CustomFrameLayout(int width, int height, int x = 0, int y = 0) { @@ -372,11 +433,7 @@ { EventHandler<MouseEventArgs> click = (sender, e) => { - if (action == null) - { - return; - } - action(this, btnStateImage, btnStateText); + action?.Invoke(this, btnStateImage, btnStateText); }; this.MouseUpEventHandler += click; btnStateImage.MouseUpEventHandler += click; -- Gitblit v1.8.0