From f432344ed815e5b6b88ab42bcee50b45e664472e Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期五, 05 六月 2020 15:49:22 +0800 Subject: [PATCH] 2020-06-05-01 --- HDL-ON_Android/.DS_Store | 0 HDL_ON/UI/.DS_Store | 0 HDL_ON/UI/Music/A31PlayMusicPage.cs | 10 + HDL_ON/UI/Music/SendMethod.cs | 15 +-- .vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm | 0 HDL_ON/UI/Music/MusicMain.cs | 6 HDL_ON/UI/Music/View/MusicView.cs | 2 HDL-ON_Android/Assets/.DS_Store | 0 HDL_ON/.DS_Store | 0 .DS_Store | 0 .vs/HDL_APP_Project/xs/sqlite3/storage.ide | 0 .vs/HDL_APP_Project/xs/UserPrefs.xml | 24 ++-- .vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal | 0 HDL_ON/UI/Music/View/DialogView.cs | 200 +++++++++++++++++++++++++++++++++++++++ 14 files changed, 230 insertions(+), 27 deletions(-) diff --git a/.DS_Store b/.DS_Store index a2788f2..7c8d1bc 100644 --- a/.DS_Store +++ b/.DS_Store Binary files differ diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml index ef106dc..c5510af 100644 --- a/.vs/HDL_APP_Project/xs/UserPrefs.xml +++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml @@ -1,13 +1,12 @@ 锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default"> - <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/Music/A31LoveMusicList.cs"> + <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/Music/View/MusicView.cs"> <Files> - <File FileName="HDL_ON/UI/Music/SendMethod.cs" Line="185" Column="1" /> - <File FileName="../鏃х増鏈琈usic/MyMusic.cs" Line="1412" Column="1" /> - <File FileName="HDL_ON/UI/Music/A31MusicModel.cs" Line="154" Column="1" /> - <File FileName="HDL_ON/UI/Music/MusicMain.cs" Line="294" Column="84" /> - <File FileName="HDL_ON/UI/Music/View/DialogView.cs" Line="561" Column="42" /> - <File FileName="HDL_ON/UI/Music/A31PlayStatus.cs" Line="1" Column="1" /> - <File FileName="HDL_ON/UI/Music/A31LoveMusicList.cs" Line="23" Column="1" /> + <File FileName="HDL_ON/UI/Music/View/DialogView.cs" Line="1290" Column="66" /> + <File FileName="HDL_ON/UI/Music/MusicMain.cs" Line="219" Column="28" /> + <File FileName="HDL_ON/UI/Music/SendMethod.cs" Line="150" Column="49" /> + <File FileName="HDL_ON/UI/Music/A31MusicModel.cs" Line="217" Column="29" /> + <File FileName="HDL_ON/UI/Music/A31PlayMusicPage.cs" Line="384" Column="19" /> + <File FileName="HDL_ON/UI/Music/View/MusicView.cs" Line="24" Column="60" /> </Files> <Pads> <Pad Id="ProjectPad"> @@ -18,8 +17,9 @@ <Node name="Entity" expanded="True" /> <Node name="UI" expanded="True"> <Node name="Music" expanded="True"> - <Node name="View" expanded="True" /> - <Node name="A31LoveMusicList.cs" selected="True" /> + <Node name="View" expanded="True"> + <Node name="MusicView.cs" selected="True" /> + </Node> </Node> <Node name="UI0-Public" expanded="True" /> <Node name="UI2" expanded="True"> @@ -29,7 +29,9 @@ </Node> <Node name="HDL-ON_Android" expanded="True"> <Node name="Assets" expanded="True"> - <Node name="Phone" expanded="True" /> + <Node name="Phone" expanded="True"> + <Node name="MusicIcon" expanded="True" /> + </Node> </Node> </Node> </Node> diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide index 89f9ab6..ffec704 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide Binary files differ diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm index dd912aa..4076a34 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm Binary files differ diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal index 0df1b98..d9bd4d9 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal Binary files differ diff --git a/HDL-ON_Android/.DS_Store b/HDL-ON_Android/.DS_Store index cece0c5..e0a823f 100644 --- a/HDL-ON_Android/.DS_Store +++ b/HDL-ON_Android/.DS_Store Binary files differ diff --git a/HDL-ON_Android/Assets/.DS_Store b/HDL-ON_Android/Assets/.DS_Store index da00722..735ad8d 100644 --- a/HDL-ON_Android/Assets/.DS_Store +++ b/HDL-ON_Android/Assets/.DS_Store Binary files differ diff --git a/HDL_ON/.DS_Store b/HDL_ON/.DS_Store index 89f7afd..e73ff38 100644 --- a/HDL_ON/.DS_Store +++ b/HDL_ON/.DS_Store Binary files differ diff --git a/HDL_ON/UI/.DS_Store b/HDL_ON/UI/.DS_Store index c018345..6388979 100644 --- a/HDL_ON/UI/.DS_Store +++ b/HDL_ON/UI/.DS_Store Binary files differ diff --git a/HDL_ON/UI/Music/A31PlayMusicPage.cs b/HDL_ON/UI/Music/A31PlayMusicPage.cs index b6ef8f9..d97492b 100644 --- a/HDL_ON/UI/Music/A31PlayMusicPage.cs +++ b/HDL_ON/UI/Music/A31PlayMusicPage.cs @@ -313,6 +313,14 @@ }); }; + ///闊抽噺鍥炬爣鐐瑰嚮浜嬩欢 + playView.volIconBtn.MouseUpEventHandler += (sender, e) => + { + if (A31MusicModel.Current.ServerClientType == 1 && A31MusicModel.Current.Slave.slave_list.Count != 0) + { ///涓绘挱鏀惧櫒 + new View.DialogView { }.PlayerVolumeView(A31MusicModel.Current); + } + }; ///闊抽噺杩涘害鏉$偣鍑讳簨浠� EventHandler<int> progressClick = (sender, e) => { @@ -331,7 +339,7 @@ playView.prevBtn.MouseUpEventHandler += (sender, e) => { playView.prevBtn.IsSelected = false; - }; + }; ///鏆傚仠/鎾斁鐐瑰嚮浜嬩欢 playView.playBtn.MouseDownEventHandler += (sender, e) => { diff --git a/HDL_ON/UI/Music/MusicMain.cs b/HDL_ON/UI/Music/MusicMain.cs index 997df56..f014ced 100644 --- a/HDL_ON/UI/Music/MusicMain.cs +++ b/HDL_ON/UI/Music/MusicMain.cs @@ -106,7 +106,7 @@ if (obj == null) { ///杩欓噷瑕佽鍙栦富浠庡叧绯� - //readServerOrClientMode(); + readServerOrClientMode(); A31MusicModel.Save(); return; } @@ -360,7 +360,7 @@ UniqueDeviceName = slave.uuid.Replace("uuid:", ""), Name = slave.name, IsCanShow = false, - IsOnLine = false, + IsOnLine = false,//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲� }); } //濡傛灉鎵惧埌灏辨洿鏂颁负浠庣殑 @@ -372,7 +372,7 @@ tempA31Player.Name = slave.name; tempA31Player.UniqueDeviceName = slave.uuid.Replace("uuid:", ""); tempA31Player.IsCanShow = false; - tempA31Player.IsOnLine = false; + tempA31Player.IsOnLine = false;//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲� } } diff --git a/HDL_ON/UI/Music/SendMethod.cs b/HDL_ON/UI/Music/SendMethod.cs index b9b530d..a6ae4bb 100644 --- a/HDL_ON/UI/Music/SendMethod.cs +++ b/HDL_ON/UI/Music/SendMethod.cs @@ -153,22 +153,17 @@ try { - if (a31MusicModel.ServerClientType == -1) + if (a31MusicModel.ServerClientType == 1) { - var result = OpenWeb("http://" + a31MusicModel.MainPlayIP + "/httpapi.asp?command=multiroom:getSlaveList"); - if (result != null) + var result = OpenWeb("http://" + a31MusicModel.IPAddress + "/httpapi.asp?command=multiroom:getSlaveList"); + if (result != null && result != "Failed") { var slaves = Newtonsoft.Json.JsonConvert.DeserializeObject<Slaves>(result); - if (slaves != null && slaves.slave_list != null) + if (slaves != null && slaves.slave_list != null && slaves.slave_list.Count != 0) { - var slave = slaves.slave_list.Find((obj) => obj.uuid.Replace("uuid:", "") == a31MusicModel.UniqueDeviceName); - if (slave != null) - { - a31MusicModel.A31PlayStatus.vol = slave.volume; - } + a31MusicModel.Slave = slaves; } } - return; } WebClient webClient = new WebClient(); diff --git a/HDL_ON/UI/Music/View/DialogView.cs b/HDL_ON/UI/Music/View/DialogView.cs index 44b0034..b9aff05 100644 --- a/HDL_ON/UI/Music/View/DialogView.cs +++ b/HDL_ON/UI/Music/View/DialogView.cs @@ -1136,7 +1136,205 @@ return a31player.Name; } } - + /// <summary> + /// 鎾斁鍣ㄩ煶閲忕殑鐣岄潰 + /// </summary> + /// <param name="a31player">涓绘挱鏀惧櫒</param> + public void PlayerVolumeView(A31MusicModel a31player) + { + #region + //涓绘帶浠� + Dialog dialog = new Dialog() + { + //BackgroundColor = Color.PopupBackgroundColor, + }; + dialog.Show(); + //鐖舵帶浠� + FrameLayout frame = new FrameLayout { }; + dialog.AddChidren(frame); + frame.MouseUpEventHandler += (sen, e) => + { + dialog.Close(); + }; + //鐧借壊蹇埗鎺т欢 + FrameLayout dialogFra = new FrameLayout() + { + X = Application.GetRealWidth(16), + Y = Application.GetRealHeight(397), + Width = Application.GetRealWidth(344), + Height = Application.GetRealHeight(250), + BackgroundColor = Color.WhiteColor, + Radius = (uint)Application.GetRealHeight(12), + }; + frame.AddChidren(dialogFra); + //鏄剧ず澶撮儴淇℃伅鐖舵帶浠� + FrameLayout topFra = new FrameLayout() + { + Width = Application.GetRealWidth(344), + Height = Application.GetRealHeight(58), + }; + dialogFra.AddChidren(topFra); + //鍙栨秷鎺т欢 + Button cancelnBtn = new Button + { + X = Application.GetRealWidth(20), + Y = Application.GetRealHeight(15), + Width = Application.GetRealWidth(60), + Height = Application.GetRealHeight(20), + TextID = StringId.cancelMusic, + TextAlignment = TextAlignment.CenterLeft, + TextColor = Color.MusicNoTxetColor, + TextSize = TextSize.Text14, + }; + topFra.AddChidren(cancelnBtn); + cancelnBtn.MouseUpEventHandler += (sen, e) => + { + dialog.Close(); + }; + //鏍囬鎺т欢 + Button txetBtn = new Button + { + X = cancelnBtn.Right + Application.GetRealWidth(20), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(152), + Height = Application.GetRealHeight(22), + TextColor = Color.TextColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.Center, + //TextID = StringId.readyPlay, + Text="璋冭妭闊抽噺", + IsBold = true, + }; + topFra.AddChidren(txetBtn); + //纭鎺т欢 + Button confirmBtn = new Button + { + X = Application.GetRealWidth(344 - 60 - 20), + Y = Application.GetRealHeight(15), + Width = Application.GetRealWidth(60), + Height = Application.GetRealHeight(20), + TextID = StringId.confirmMusic, + TextAlignment = TextAlignment.CenterRight, + TextColor = Color.SelectedColor, + TextSize = TextSize.Text14, + }; + topFra.AddChidren(confirmBtn); + confirmBtn.MouseUpEventHandler += (sen, e) => + { + dialog.Close(); + }; + + VerticalScrolViewLayout verticalScrolViewLayout = new VerticalScrolViewLayout + { + Y = Application.GetRealHeight(58), + Height = dialogFra.Height - Application.GetRealHeight(58), + Width = Application.GetRealWidth(343), + }; + dialogFra.AddChidren(verticalScrolViewLayout); + + var playList = new List<A31MusicModel>(); + for (int i = 0; i < a31player.Slave.slave_list.Count; i++) + { + var slave = a31player.Slave.slave_list[i]; + var music_If = A31MusicModel.A31MusicModelList.Find((c) => c.UniqueDeviceName == slave.uuid.Replace("uuid:", "")); + if (music_If != null) + { + music_If.ServerClientType = -1; + music_If.A31PlayStatus.vol = slave.volume; + playList.Add(music_If); + } + } + playList.Add(a31player); + + for (int i = 0; i < playList.Count; i++) + { + var player = playList[i]; + FrameLayout volumeFra = new FrameLayout + { + Height = Application.GetRealHeight(64), + }; + verticalScrolViewLayout.AddChidren(volumeFra); + Button volumeTextBtn = new Button + { + X = Application.GetRealWidth(28), + Y = Application.GetRealHeight(8), + Width = Application.GetRealWidth(200), + Height = Application.GetRealHeight(14), + TextColor = Color.MusicNoTxetColor, + TextSize = TextSize.Text10, + TextAlignment = TextAlignment.CenterLeft, + + }; + volumeFra.AddChidren(volumeTextBtn); + if (player.ServerClientType == -1) + { + volumeTextBtn.Text = player.Name + "闊抽噺"; + } + else if (player.ServerClientType == 1) + { + volumeTextBtn.Text = "鎬婚煶閲�"; + } + + DiyImageSeekBar volSeekBar = new DiyImageSeekBar + { + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(28), + Width = Application.GetRealWidth(240), + Height = Application.GetRealHeight(54),//杩涘害鏉$埗鎺т欢鑳屾櫙楂樺害 + IsProgressTextShow = false,//鏄剧ず鐧惧垎姣� + IsClickable = true,//杩涘害鏉℃槸鍚︽粦鍔� + ProgressBarColor = Color.SelectedColor,//閫変腑杩涘害鏉¢鑹� + ThumbImagePath = "MusicIcon/progressIcon.png",//杩涘害鏉℃寜閽浘鏍� + ThumbImageHeight = Application.GetMinRealAverage(54),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級 + SeekBarViewHeight = Application.GetMinRealAverage(8),//杩涘害鏉$殑楂樺害 + Progress=int.Parse(player.A31PlayStatus.vol), + //ProgressChangeDelayTime= + }; + volumeFra.AddChidren(volSeekBar); + + Button valueBtn = new Button + { + X = Application.GetRealWidth(289), + Y = Application.GetRealHeight(31), + Width = Application.GetRealWidth(26), + Height = Application.GetRealHeight(17), + TextColor = Color.MusicNoTxetColor, + TextSize = TextSize.Text12, + TextAlignment = TextAlignment.CenterLeft, + Text = player.A31PlayStatus.vol + "%", + }; + volumeFra.AddChidren(valueBtn); + + ///闊抽噺杩涘害鏉$偣鍑讳簨浠� + EventHandler<int> progressClick = (sender, e) => + { + if (player.ServerClientType == -1) + { + valueBtn.Text = volSeekBar.Progress + "%"; + SendMethod.ControlVolume(volSeekBar.Progress, player); + } + else if (player.ServerClientType == 1) + { + for (int j = 0; j < playList.Count; j++) + { + var music = playList[j]; + var frameLayout = (FrameLayout)verticalScrolViewLayout.GetChildren(j); + var diyImageSeekBar = (DiyImageSeekBar)frameLayout.GetChildren(1); + var button = (Button)frameLayout.GetChildren(2); + diyImageSeekBar.Progress = volSeekBar.Progress; + button.Text = volSeekBar.Progress + "%"; + SendMethod.ControlVolume(volSeekBar.Progress, music); + } + } + }; + volSeekBar.OnProgressChangedEvent += progressClick; + volSeekBar.OnStopTrackingTouchEvent += progressClick; + } + #endregion + + } + + } [System.Serializable] public class A31Wifi鈥� { diff --git a/HDL_ON/UI/Music/View/MusicView.cs b/HDL_ON/UI/Music/View/MusicView.cs index db385d8..2f98906 100644 --- a/HDL_ON/UI/Music/View/MusicView.cs +++ b/HDL_ON/UI/Music/View/MusicView.cs @@ -65,7 +65,7 @@ TextID=StringId.merge, X = Application.GetRealWidth(214 + 33), Y = Application.GetRealHeight(18 + 4), - Width = Application.GetRealWidth(24), + Width = Application.GetRealWidth(24+3), Height = Application.GetRealHeight(17), TextColor = Color.TextColor, TextSize=TextSize.Text12, -- Gitblit v1.8.0