From 611786df5108dca0bdcff03834cc285cba4b8e61 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 13 十月 2020 16:48:43 +0800
Subject: [PATCH] 2020-10-13-1

---
 HDL_ON/UI/UI2/FuntionControlView/Music/MusicMain.cs |  111 ++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 76 insertions(+), 35 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/MusicMain.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/MusicMain.cs
index a190998..5a3e74d 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Music/MusicMain.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Music/MusicMain.cs
@@ -8,21 +8,31 @@
     public class MusicMain : FrameLayout
     {
 
-        //FrameLayout Frame = null;
-        //public MusicListViewMain() {
-        //    Frame = this;
-        //}
+        /// <summary>
+        /// MusicMain瀵硅薄鏋勯�犲嚱鏁�
+        /// </summary>
         public MusicMain()
         {
             Tag = "MusicMain";
+            //杩涙潵闊充箰鍒楄〃鐣岄潰鍏堢Щ闄や箣鍓嶇嚎绋�;
+            A31MusicModel.RemoveListThread();
         }
+        /// <summary>
+        /// 閲嶅啓RemoveFromParent鏂规硶
+        /// </summary>
         public override void RemoveFromParent()
         {
             base.RemoveFromParent();
             clearA31Threads();
+            A31MusicModel.ReadMusicStates();//杩涙潵娌℃湁闊充箰琚敹钘忚繃锛岄��鍑烘湁闊充箰琚敹钘忚繃
         }
+        /// <summary>
+        /// 鍒涘缓绾跨▼鍒楄〃
+        /// </summary>
         static List<System.Threading.Thread> threadLists = new List<System.Threading.Thread>();
-
+        /// <summary>
+        /// 绉婚櫎绾跨▼
+        /// </summary>
         static void clearA31Threads()
         {
             var threads = threadLists.FindAll((obj) => { return obj.Name == "A31"; });
@@ -33,12 +43,13 @@
                     threadLists.Remove(thread);
                     if (thread.IsAlive)
                     {
+                        ///寮哄埗绾跨▼鎶涘紓甯�
                         thread.Abort();
                     }
                 }
                 catch (Exception e)
                 {
-                    System.Console.WriteLine(e.Message);
+                    MainPage.Log("clearA31Threads error : " + e.Message);
                 }
             }
         }
@@ -46,14 +57,15 @@
         ///  鏄剧ず鍔犺浇鐣岄潰
         /// </summary>
         public  static Loading loading = new Loading();
+        /// <summary>
+        /// 瀹氫箟鍏ㄥ眬瀵硅薄
+        /// </summary>
         VerticalRefreshLayout verticalRefresh;
-
         public void Show()
         {
-            
 
-            #region   鐣岄潰甯冨眬
-            this.BackgroundColor = Color.ViewColor;
+            #region 鐣岄潰甯冨眬
+            this.BackgroundColor = MusicColor.ViewColor;
             var topView = new TopView();
             this.AddChidren(topView.TopFLayoutView());
             topView.topNameBtn.TextID =StringId.a31Music;
@@ -128,11 +140,14 @@
                             a31MusicModel.IsOnLine = true;
                         }
                     }
-                    catch (Exception e) { System.Console.WriteLine(e.Message); }
+                    catch (Exception e) { MainPage.Log(e.Message); }
                 });
             }
         }
-
+        /// <summary>
+        /// 鍒锋柊鎾斁鍣ㄥ垪琛�
+        /// </summary>
+        /// <param name="Yes">鏄惁鏄剧ず鍒锋柊鍥炬爣</param>
         void SeachMusic(bool Yes = false)
         {
             for (int i = 0; i < A31MusicModel.A31MusicModelList.Count; i++)
@@ -183,6 +198,7 @@
                             }
                             MusicListView(a31player);
                         }
+                       //A31MusicModel.ReadMusicStates();
 
                     });
                     return;
@@ -193,6 +209,7 @@
                     //涓嶆槸鎴戜滑鏀寔鐨勫搧鐗屼笉鏀寔
                     if (obj.Name != null)
                     {
+                        obj.sid = "00010112345678901234561A1A230123AABB" + obj.UniqueDeviceName;
                         A31MusicModel.A31MusicModelList.Add(obj);
                     }
                 }
@@ -212,36 +229,48 @@
         /// </summary>
         void MusicListView(A31MusicModel a31player)
         {
-            
             MusicView musicView = new MusicView();
             musicView.View(verticalRefresh);
-            musicView.singerBtn.Text = a31player.A31PlayStatus.Artist;
             musicView.songNameBtn.Text = a31player.A31PlayStatus.Title;
             musicView.musicNameBtn.Text = new View.DialogView { }.NamePlayer(a31player);
-           
-            if (a31player.IsEnd) {
-                musicView.muiscFl.Height =Application.GetRealHeight(12 + 139 + 12);
+            if (a31player.IsEnd)
+            {
+                musicView.muiscFl.Height = Application.GetRealHeight(12 + 139 + 12);
             }
 
             musicView.collectIconBtn.MouseUpEventHandler += (sender, e) =>
             {
                 musicView.collectIconBtn.IsSelected = !musicView.collectIconBtn.IsSelected;
-                if (musicView.collectIconBtn.IsSelected)
+                if (a31player.ServerClientType == 1)
                 {
-                    a31player.collection = true;
+                    if (musicView.collectIconBtn.IsSelected)
+                    {
+                        a31player.MainPlayCollection = true;
+                    }
+                    else
+                    {
+                        a31player.MainPlayCollection = false;
+                    }
                 }
                 else
                 {
-                    a31player.collection = false;
+                    if (musicView.collectIconBtn.IsSelected)
+                    {
+                        a31player.collection = true;
+                    }
+                    else
+                    {
+                        a31player.collection = false;
+                    }
                 }
-
+                A31MusicModel.Save();
             };
 
             EventHandler<MouseEventArgs> clickMergence = (sender, e) =>
             {
                 if (a31player.ServerClientType == 0)
                 {
-                    new View.DialogView { }.PlayMergence();
+                    new View.DialogView { }.PlayMergence(a31player);
                 }
                 else if (a31player.ServerClientType == 1)
                 {
@@ -263,10 +292,10 @@
             };
             musicView.musicIfonFl.MouseUpEventHandler += clickPlayView;
             musicView.clickBtn.MouseUpEventHandler += clickPlayView;//
-            musicView.singerBtn.MouseUpEventHandler += clickPlayView;
             musicView.songNameBtn.MouseUpEventHandler += clickPlayView;//
             musicView.musicNameBtn.MouseUpEventHandler += clickPlayView;
             musicView.regionBtn.MouseUpEventHandler += clickPlayView;//
+
             ///涓婁竴鏇茬偣鍑讳簨浠�
             musicView.prevBtn.MouseDownEventHandler += (sender, e) =>
             {
@@ -304,10 +333,8 @@
                 musicView.nextBtn.IsSelected = false;
             };
 
-            System.Threading.Tasks.Task.Run(() =>
+            var musicThread = new System.Threading.Thread(() =>
             {
-                System.Threading.Thread.CurrentThread.Name = "A31";
-                threadLists.Add(System.Threading.Thread.CurrentThread);
                 while (true)
                 {
                     System.Threading.Thread.Sleep(1000);
@@ -318,7 +345,6 @@
                     SendMethod.ReadStatus(a31player);
                     Application.RunOnMainThread(() =>
                     {
-                        musicView.singerBtn.Text = a31player.A31PlayStatus.Artist;
                         musicView.songNameBtn.Text = a31player.A31PlayStatus.Title;
                         musicView.musicNameBtn.Text = new View.DialogView { }.NamePlayer(a31player);
                         if (a31player.A31PlayStatus.status == "play")
@@ -330,21 +356,35 @@
                             musicView.playBtn.IsSelected = false;
                         }
                         musicView.regionBtn.Text = a31player.GetRoomListName();
-                        if (a31player.collection)
+                        if (a31player.ServerClientType == 1)
                         {
-                            musicView.collectIconBtn.IsSelected = true;
+                            if (a31player.MainPlayCollection)
+                            {
+                                musicView.collectIconBtn.IsSelected = true;
+                            }
+                            else
+                            {
+                                musicView.collectIconBtn.IsSelected = false;
+                            }
                         }
                         else
                         {
-                            musicView.collectIconBtn.IsSelected = false;
+                            if (a31player.collection)
+                            {
+                                musicView.collectIconBtn.IsSelected = true;
+                            }
+                            else
+                            {
+                                musicView.collectIconBtn.IsSelected = false;
+                            }
                         }
-
                     });
                 }
-            });
-            }
-        
-
+            })
+            { IsBackground = true, Name = "A31" };
+            musicThread.Start();
+            threadLists.Add(musicThread);
+        }
         /// <summary>
         /// 璇诲彇涓讳粠鍏崇郴
         /// </summary>
@@ -402,6 +442,7 @@
                                 {
                                     A31MusicModel.A31MusicModelList.Add(new A31MusicModel
                                     {
+                                        sid = "00010112345678901234561A1A230123AABB" + slave.uuid.Replace("uuid:", ""),
                                         ServerClientType = -1,//浠庣殑
                                         IPAddress = slave.ip,
                                         MainPlayIP = a31player.IPAddress,

--
Gitblit v1.8.0