From 3f6685c77beeb12baf840733fb890860f4c26e7c Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 25 七月 2024 17:25:59 +0800
Subject: [PATCH] 2024年07月25日17:24:45

---
 HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs |  216 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 159 insertions(+), 57 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
index a4de234..977282f 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
@@ -3,6 +3,7 @@
 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
@@ -32,7 +33,11 @@
         private RemoteControlEntity remoteControl;
         public Action<IntType> action;
         CornerFramLayout cornerFram;
-        TypeSingleFramLayout typeSingleFramLayout;
+        /// <summary>
+        /// 褰卞簱
+        /// </summary>
+        TypeSingleFramLayout ykSingleFramLayout;
+        TypeSingleFramLayout bfqSingleFramLayout;
         MenuFramLayout menuFram;
         TypeMultiFramLayout typeMultiFramLayout;
 
@@ -54,55 +59,73 @@
 
         private void EventListener()
         {
-            cornerFram.selectAction += (value) =>
+
+            cornerFram.selectKeyAction += (keypadEntity) =>
             {
-                Console.WriteLine("1");
+
+                if (keypadEntity == null)
+                {
+                    return;
+                }
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
             };
+           
 
-            typeSingleFramLayout.SetClickListener((f) =>
+            menuFram.SetTopClickListener((keypadEntity) =>
             {
-                YkPage ykPage = new YkPage(this.remoteControl);
-                MainPage.BasePageView.AddChidren(ykPage);
-                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                ykPage.Show();
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
             });
-
-            menuFram.SetTopClickListener((b) =>
+            menuFram.SetBottomClickListener((keypadEntity) =>
             {
-
-                Console.WriteLine("5");
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
             });
-            menuFram.SetBottomClickListener((b) =>
+            menuFram.SetLeftClickListener((keypadEntity) =>
             {
-                Console.WriteLine("6");
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
             });
-            menuFram.SetLeftClickListener((b) =>
+            menuFram.SetRightClickListener((keypadEntity) =>
             {
-                Console.WriteLine("7");
-            });
-            menuFram.SetRightClickListener((b) =>
-            {
-                Console.WriteLine("8");
-            });
-            menuFram.SetOkClickListener((b) =>
-            {
-                Console.WriteLine("9");
-            });
-
-            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();
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
 
             });
-
-            typeMultiFramLayout.SetRightFlClickListener((f) =>
+            menuFram.SetOkClickListener((keypadEntity) =>
             {
-                Console.WriteLine("4");
-                action?.Invoke(IntType.Player);
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked);
             });
+
+
+            if (bfqSingleFramLayout != null)
+            {
+                bfqSingleFramLayout.SetClickListener((f) =>
+                {
+                    action?.Invoke(IntType.Player);
+                });
+            }
+            if (ykSingleFramLayout != null)
+            {
+                ykSingleFramLayout.SetClickListener((f) =>
+                {
+                    YkPage ykPage = new YkPage(this.remoteControl);
+                    MainPage.BasePageView.AddChidren(ykPage);
+                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    ykPage.Show();
+                });
+            }
+            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.Player);
+                });
+            }
 
         }
 
@@ -120,42 +143,121 @@
                 TextSize = TextSize.Text16,
                 //TextID = StringId.bofangqi,
                 Text = this.remoteControl.name,
+                Padding = new Padding(0, 0, 0, 0),
+                IsBold = true,
             };
             this.AddChidren(btnTitle);
 
-            cornerFram = new CornerFramLayout(343, 452, 17);
+            cornerFram = new CornerFramLayout(343, 452 - 30, 17);
+            this.AddChidren(cornerFram);
             cornerFram.X = Application.GetRealWidth(16);
             cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16);
-            this.AddChidren(cornerFram);
             cornerFram.SetMargin(16, 0, 16, 0);
-            cornerFram.LoadButtonPage(AksCommonMethod.Current.GetMusicKeypadList(), 4);
+            cornerFram.LoadButtonPage(AksCommonMethod.Current.GetMusicKeypadList(this.remoteControl), 4);
 
 
-            CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 364, 17);
-            cornerBottomFram.X = Application.GetRealWidth(16);
-            cornerBottomFram.Y = cornerFram.Bottom + Application.GetRealHeight(16);
-            cornerBottomFram.BackgroundColor = MusicColor.WhiteColor;
-            cornerBottomFram.Radius = (uint)Application.GetRealHeight(17);
-            this.AddChidren(cornerBottomFram);
+            if (sequencerList.Count == 0)
+            {
+                //娌℃湁鏃跺簭鍣�
+                CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 364 - 32-32-40, 17);
+                this.AddChidren(cornerBottomFram);
+                cornerBottomFram.X = Application.GetRealWidth(16);
+                cornerBottomFram.Y = cornerFram.Bottom + Application.GetRealHeight(16);
+                cornerBottomFram.BackgroundColor = MusicColor.WhiteColor;
+                cornerBottomFram.Radius = (uint)Application.GetRealHeight(17);
 
-            typeSingleFramLayout = new TypeSingleFramLayout();
-            typeSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
-            typeSingleFramLayout.AddView(cornerBottomFram);
+                //鎾斁鍣�
+                bfqSingleFramLayout = new TypeSingleFramLayout();
+                bfqSingleFramLayout.AddView(cornerBottomFram);
+                bfqSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
+                bfqSingleFramLayout.singleFramLayout.X = Application.GetRealWidth(16);
+                bfqSingleFramLayout.singleFramLayout.Width = Application.GetRealWidth(101);
+                bfqSingleFramLayout.btnName.Text = this.remoteControl.name;
+                bfqSingleFramLayout.btnName.X= Application.GetRealWidth(16);
+                bfqSingleFramLayout.btnName.Width = Application.GetRealWidth(48);
+                bfqSingleFramLayout.btnRightImage.X = bfqSingleFramLayout.btnName.Right + Application.GetRealWidth(8);
+                bfqSingleFramLayout.btnRightImage.Width = Application.GetRealWidth(16);
+                bfqSingleFramLayout.btnRightImage.Height = Application.GetRealWidth(16);
+                bfqSingleFramLayout.btnRightImage.UnSelectedImagePath = "AksIcon/xuanze.png";
+                bfqSingleFramLayout.btnRightImage.Gravity = Gravity.CenterVertical;
+                bfqSingleFramLayout.btnLeftImage.Visible = false;
+                bfqSingleFramLayout.CustomCalculationWidth(TypeSingleFramLayout.Orientation.left,
+                    bfqSingleFramLayout.singleFramLayout,
+                    bfqSingleFramLayout.btnName,
+                     bfqSingleFramLayout.btnRightImage,
+                     48);
 
-            menuFram = new MenuFramLayout();
-            menuFram.Y = typeSingleFramLayout.singleFramLayout.Bottom + Application.GetRealHeight(32);
-            menuFram.AddView(cornerBottomFram);
+                //褰卞簱
+                ykSingleFramLayout = new TypeSingleFramLayout();
+                ykSingleFramLayout.AddView(cornerBottomFram);
+                ykSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
+                ykSingleFramLayout.singleFramLayout.X = Application.GetRealWidth(226);
 
-            typeMultiFramLayout = new TypeMultiFramLayout();
-            typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32);
-            typeMultiFramLayout.AddView(cornerBottomFram);
-            //typeMultiFramLayout.btnBottonRightName.TextID = StringId.bofangqi;
-            typeMultiFramLayout.btnBottonRightName.Text = this.remoteControl.name;
+                menuFram = new MenuFramLayout();
+                menuFram.AddView(cornerBottomFram);
+                menuFram.Y = ykSingleFramLayout.singleFramLayout.Bottom + Application.GetRealHeight(32);
+                this.AdjustRealHeight(16);
 
-            this.AdjustRealHeight(16);
+            }
+            else
+            {
+                //鏈夋椂搴忓櫒
+                CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 364 - 32, 17);
+                this.AddChidren(cornerBottomFram);
+                cornerBottomFram.X = Application.GetRealWidth(16);
+                cornerBottomFram.Y = cornerFram.Bottom + Application.GetRealHeight(16);
+                cornerBottomFram.BackgroundColor = MusicColor.WhiteColor;
+                cornerBottomFram.Radius = (uint)Application.GetRealHeight(17);
+
+
+                ykSingleFramLayout = new TypeSingleFramLayout();
+                ykSingleFramLayout.AddView(cornerBottomFram);
+                ykSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
+                ykSingleFramLayout.singleFramLayout.Gravity = Gravity.CenterHorizontal;
+
+
+
+                menuFram = new MenuFramLayout();
+                menuFram.AddView(cornerBottomFram);
+                menuFram.Y = ykSingleFramLayout.singleFramLayout.Bottom + Application.GetRealHeight(32);
+
+
+                typeMultiFramLayout = new TypeMultiFramLayout();
+                typeMultiFramLayout.AddView(cornerBottomFram);
+                typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32);
+                //typeMultiFramLayout.btnBottonRightName.TextID = StringId.bofangqi;
+                typeMultiFramLayout.btnRightName.Text = this.remoteControl.name;
+
+                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