From e82cf12d701ebc716f85675ba63b6b024005d9b1 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期三, 27 五月 2020 11:36:23 +0800
Subject: [PATCH] 2020-05-27-1

---
 HDL_ON/UI/Music/A31MyList.cs |   60 +++++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 45 insertions(+), 15 deletions(-)

diff --git a/HDL_ON/UI/Music/A31MyList.cs b/HDL_ON/UI/Music/A31MyList.cs
index a58e1f3..033c614 100644
--- a/HDL_ON/UI/Music/A31MyList.cs
+++ b/HDL_ON/UI/Music/A31MyList.cs
@@ -102,33 +102,60 @@
                     Height = Application.GetMinRealAverage(24),
                     UnSelectedImagePath = "MusicIcon/filePause.png",
                     SelectedImagePath = "MusicIcon/filePlay.png",
-                    Tag= list.ListName,
+                    Tag= list,
                 };
                 addFlieRow.AddChidren(playIconBtn);
 
-                playIconBtn.MouseUpEventHandler += (sender, e) =>
+                playIconBtn.MouseUpEventHandler = (sender, e) =>
                 {
+
                     if (list.MusicInfoList.Count == 0)
                     {
                         return;
                     }
-                    ///鍙栭殢鏈烘暟;
-                    var ra = new Random { }.Next(0, list.MusicInfoList.Count);
-                    ///鏌ユ壘褰撳墠鐨勯煶涔�;
-                    var songs = list.MusicInfoList[ra];
-                    //鐐瑰嚮鎸夐挳闅忔満鎾斁闊充箰
-                    System.Threading.Tasks.Task.Run(() =>
+
+                    ///鏌ユ壘褰撳墠鎾斁闊充箰鏄惁杩欎釜鍒楄〃
+                    var music = list.MusicInfoList.Find((c) => (c.URL == A31MusicModel.Current.A31PlayStatus.TrackURL) && (list.ListName == A31MusicModel.Current.A31PlayStatus.Artist));
+                    if (playIconBtn.IsSelected)
                     {
-                        System.Threading.Thread.Sleep(50);
-                        Application.RunOnMainThread(() =>
+                        if (music != null && A31MusicModel.Current.A31PlayStatus.status == "play")
                         {
-                            //绉婚櫎鐣岄潰
+
+                            SendMethod.Pause(A31MusicModel.Current);
+                            A31MusicModel.Current.A31PlayStatus.status = "pause";
+                        }
+
+                    }
+                    else
+                    {
+                        if (music != null && A31MusicModel.Current.A31PlayStatus.status != "play")
+                        {
+                            SendMethod.Play(A31MusicModel.Current);
+                            A31MusicModel.Current.A31PlayStatus.status = "play";
+                        }
+                        else
+                        {
+                            ///鍙栭殢鏈烘暟;
+                            var ra = new Random { }.Next(0, list.MusicInfoList.Count);
+                            ///鏌ユ壘褰撳墠鐨勯煶涔�;
+                            var songs = list.MusicInfoList[ra];
+                            //鐐瑰嚮鎸夐挳闅忔満鎾斁闊充箰
                             System.Threading.Tasks.Task.Run(() =>
                             {
-                                PushList(songs, list.ListName, list.MusicInfoList);
+                                System.Threading.Thread.Sleep(50);
+                                Application.RunOnMainThread(() =>
+                                {
+                                    //绉婚櫎鐣岄潰
+                                    System.Threading.Tasks.Task.Run(() =>
+                                    {
+                                        PushList(songs, list.ListName, list.MusicInfoList);
+                                    });
+                                });
                             });
-                        });
-                    });
+                        }
+
+                    }
+
                 };
                 //鏂囦欢鍚嶆帶浠�
                 Button fileNameBtn = new Button
@@ -230,7 +257,10 @@
                             {
                                 RowLayout view = (RowLayout)middViewLayout.GetChildren(i);
                                 var playBtn = (Button)view.GetChildren(1);//鐩存帴FrameLayout鐖舵帶浠舵壘鍒拌鎺т欢Button
-                                if (A31MusicModel.Current.A31PlayStatus.Artist == playBtn.Tag.ToString())
+                                var listIfon = playBtn.Tag as FileListInfo;//寮哄埗杞崲涓篎ileListInfo绫诲瀷;
+                                ///鏌ユ壘褰撳墠鎾斁闊充箰鏄惁杩欎釜鍒楄〃
+                                var musics = listIfon.MusicInfoList.Find((c) => c.URL == A31MusicModel.Current.A31PlayStatus.TrackURL);
+                                if (musics!=null&&A31MusicModel.Current.A31PlayStatus.Artist == listIfon.ListName && A31MusicModel.Current.A31PlayStatus.status == "play")
                                 {
                                     playBtn.IsSelected = true;
                                 }

--
Gitblit v1.8.0