From cbc156bc38d8b8eae7aef60cb186ab2b52fa701f Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 16 七月 2024 13:59:56 +0800 Subject: [PATCH] 增加全部挂断 --- HDL_ON/UI/UI2/FuntionControlView/Aks/TvPage.cs | 180 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 139 insertions(+), 41 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/TvPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/TvPage.cs index 1aa4786..0cd10f0 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/TvPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/TvPage.cs @@ -2,6 +2,8 @@ using System.Collections.Generic; using HDL_ON.UI.Music; using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; +using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; +using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; using Shared; using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage; namespace HDL_ON.UI.UI2.FuntionControlView.Aks @@ -11,9 +13,24 @@ /// </summary> public class TvPage : BaseFramLayout { - public TvPage() + /// <summary> + /// + /// </summary> + /// <param name="remoteControlEntity">閬ユ帶鍣ㄥ璞�</param> + /// <param name="sequencerList">鏃跺簭鍣ㄥ垪琛�</param> + public TvPage(RemoteControlEntity remoteControlEntity, List<SequencerEntity> sequencerList) { + this.remoteControl = remoteControlEntity; + this.sequencerList = sequencerList; } + /// <summary> + /// 鏃跺簭鍣ㄥ垪琛� + /// </summary> + private List<SequencerEntity> sequencerList; + /// <summary> + /// 褰撳墠鐨勯仴鎺у櫒瀵硅薄 + /// </summary> + private RemoteControlEntity remoteControl; public Action<IntType> action; /// <summary> /// 鏈�涓婇潰鍔熻兘閿鍣� @@ -31,6 +48,8 @@ /// 鍒囨崲璁惧瀹瑰櫒 /// </summary> TypeMultiFramLayout typeMultiFramLayout; + + TypeSingleFramLayout tvSingleFramLayout; public void Show() @@ -54,56 +73,73 @@ private void EventListener() { //鍔熻兘閿帶鍒� - cornerTopFram.selectAction += (value) => + cornerTopFram.selectKeyAction += (keypadEntity) => { - Console.WriteLine("1"); + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }; //鏁板瓧閿帶鍒� - numberFrame.selectAction += (s) => + numberFrame.selectKeyAction += (keypadEntity) => { - Console.WriteLine("鎵撳嵃====" + s); + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }; //鑿滃崟涓婃寜閿� - menuFram.SetTopClickListener((b) => + menuFram.SetTopClickListener((keypadEntity) => { - Console.WriteLine("5"); + + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }); //鑿滃崟涓嬫寜閿� - menuFram.SetBottomClickListener((b) => + menuFram.SetBottomClickListener((keypadEntity) => { - Console.WriteLine("6"); + + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }); //鑿滃崟宸︽寜閿� - menuFram.SetLeftClickListener((b) => + menuFram.SetLeftClickListener((keypadEntity) => { - Console.WriteLine("7"); + + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }); //鑿滃崟鍙虫寜閿� - menuFram.SetRightClickListener((b) => + menuFram.SetRightClickListener((keypadEntity) => { - Console.WriteLine("8"); + + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }); //鑿滃崟ok鎸夐敭 - menuFram.SetOkClickListener((b) => + menuFram.SetOkClickListener((keypadEntity) => { - Console.WriteLine("9"); - }); - //鏃跺簭鍣� - typeMultiFramLayout.SetLeftFlClickListener((f) => - { - SxqPage sxqPage = new SxqPage(); - MainPage.BasePageView.AddChidren(sxqPage); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - sxqPage.Show(); + KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); }); - //璁惧鍒囨崲 - typeMultiFramLayout.SetRightFlClickListener((f) => + + if (tvSingleFramLayout != null) { - Console.WriteLine("4"); - action?.Invoke(IntType.TV); - }); + //璁惧鍒囨崲 + tvSingleFramLayout.SetClickListener((f) => + { + action?.Invoke(IntType.TV); + }); + } + + if (typeMultiFramLayout != null) + { + //鏃跺簭鍣� + typeMultiFramLayout.SetLeftFlClickListener((f) => + { + SxqPage sxqPage = new SxqPage(this.sequencerList, this.remoteControl.deviceId); + MainPage.BasePageView.AddChidren(sxqPage); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + sxqPage.Show(); + + }); + //璁惧鍒囨崲 + typeMultiFramLayout.SetRightFlClickListener((f) => + { + action?.Invoke(IntType.TV); + }); + } } @@ -119,16 +155,17 @@ TextAlignment = TextAlignment.CenterLeft, TextColor = MusicColor.TextColor, TextSize = TextSize.Text16, - TextID = StringId.dianshi, + Text= this.remoteControl.name, + IsBold = true, }; this.AddChidren(btnTitle); - cornerTopFram = new CornerFramLayout(343, 452, 17); + cornerTopFram = new CornerFramLayout(343, 368-24, 17); cornerTopFram.X = Application.GetRealWidth(16); cornerTopFram.Y = btnTitle.Bottom + Application.GetRealHeight(16); this.AddChidren(cornerTopFram); cornerTopFram.SetMargin(16, 0, 16, 0); - cornerTopFram.LoadButtonPage(AksCommonMethod.Current.GetTYYKeypadList(),new List<int> { 5, 6 }); + cornerTopFram.LoadButtonPage(AksCommonMethod.Current.GetTvKeypadList(this.remoteControl),new List<int> { 5, 6 }); #region ----棰戦亾 鎺у埗---- FrameLayout middLayout = new FrameLayout @@ -158,6 +195,8 @@ SelectedTextColor = MusicColor.MusicTxet14SelectedColor, TextSize = TextSize.Text16, TextID = StringId.pindao, + Padding = new Padding(0, 0, 0, 0), + IsBold = true, }; leftLayout.AddChidren(leftBtnTitle); @@ -200,6 +239,8 @@ SelectedTextColor = MusicColor.MusicTxet14SelectedColor, TextSize = TextSize.Text16, TextID = StringId.kongzhi, + Padding = new Padding(0, 0, 0, 0), + IsBold = true, }; rightLayout.AddChidren(rightBtnTitle); @@ -226,21 +267,21 @@ #endregion - + //鏁板瓧鎸夐敭瀹瑰櫒 - numberFrame = new CornerFramLayout(343, 368, 17); + numberFrame = new CornerFramLayout(343, 368-24, 17); numberFrame.X = Application.GetRealWidth(16); - numberFrame.Y = middLayout.Bottom + Application.GetRealHeight(16); + numberFrame.Y = middLayout.Bottom; numberFrame.BackgroundColor = MusicColor.WhiteColor; numberFrame.SetMargin(16,0,16,0); - numberFrame.LoadNumberButtonPage(AksCommonMethod.Current.GetNumberKeypadList()); + numberFrame.LoadNumberButtonPage(AksCommonMethod.Current.GetNumberKeypadList(this.remoteControl)); this.AddChidren(numberFrame); //鑿滃崟瀹瑰櫒 - CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 292, 17); + CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 292-30, 17); cornerBottomFram.X = Application.GetRealWidth(16); - cornerBottomFram.Y = middLayout.Bottom + Application.GetRealHeight(16); + cornerBottomFram.Y = middLayout.Bottom; cornerBottomFram.BackgroundColor = MusicColor.WhiteColor; this.AddChidren(cornerBottomFram); @@ -248,10 +289,39 @@ menuFram.Y = Application.GetRealHeight(24); menuFram.AddView(cornerBottomFram); - typeMultiFramLayout = new TypeMultiFramLayout(); - typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32); - typeMultiFramLayout.AddView(cornerBottomFram); - typeMultiFramLayout.btnBottonRightName.TextID = StringId.dianshi; + + if (sequencerList.Count == 0) + { + //娌℃湁鏃跺簭鍣� + tvSingleFramLayout = new TypeSingleFramLayout(); + tvSingleFramLayout.AddView(cornerBottomFram); + tvSingleFramLayout.singleFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32); + tvSingleFramLayout.singleFramLayout.X = Application.GetRealWidth(226); + tvSingleFramLayout.singleFramLayout.Width = Application.GetRealWidth(101); + tvSingleFramLayout.btnName.Text = this.remoteControl.name; + tvSingleFramLayout.btnName.X = Application.GetRealWidth(16); + tvSingleFramLayout.btnName.Width = Application.GetRealWidth(48); + tvSingleFramLayout.btnRightImage.X = tvSingleFramLayout.btnName.Right + Application.GetRealWidth(8); + tvSingleFramLayout.btnRightImage.Width = Application.GetRealWidth(16); + tvSingleFramLayout.btnRightImage.Height = Application.GetRealWidth(16); + tvSingleFramLayout.btnRightImage.UnSelectedImagePath = "AksIcon/xuanze.png"; + tvSingleFramLayout.btnRightImage.Gravity = Gravity.CenterVertical; + tvSingleFramLayout.btnLeftImage.Visible = false; + tvSingleFramLayout.CustomCalculationWidth(TypeSingleFramLayout.Orientation.right, + tvSingleFramLayout.singleFramLayout, + tvSingleFramLayout.btnName, + tvSingleFramLayout.btnRightImage, + 48, 200); + } + else + { + + + typeMultiFramLayout = new TypeMultiFramLayout(); + typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32); + typeMultiFramLayout.AddView(cornerBottomFram); + typeMultiFramLayout.btnRightName.Text = this.remoteControl.name; + } //鍒濆鍊� leftBtnTitle.IsSelected = true; @@ -294,5 +364,33 @@ this.AdjustRealHeight(16); } + + + /// <summary> + /// 鎸夐敭鎺у埗 + /// </summary> + /// <param name="keypad"><鎸夐敭鏍囪瘑/param> + /// <param name="keyName"><鎸夐敭鍚嶇О(鎵撳嵃鐢ㄧ殑)/param> + /// <param name="isSupport"><鏄惁鏀寔鎺у埗/param> + private void KeyControl(string keypad, string keyName,bool isSupport) + { + //CommonMethod.Current.Loading.Start(); + CommonMethod.Current.SunThread(() => + { + try + { + SendMethod.Current.KeypadExecute(remoteControl.deviceId, remoteControl.rcId, keypad, keyName, isSupport); + } + catch { } + finally + { + CommonMethod.Current.MainThread(() => + { + //CommonMethod.Current.Loading.Hide(); + }); + } + }); + + } } } -- Gitblit v1.8.0