From 7167334c0e89dd84827d59e726123d14776e3a09 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 16 六月 2020 11:14:13 +0800
Subject: [PATCH] 2020-06-16-1
---
HDL_ON/UI/Music/MusicMain.cs | 160 +++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 143 insertions(+), 17 deletions(-)
diff --git a/HDL_ON/UI/Music/MusicMain.cs b/HDL_ON/UI/Music/MusicMain.cs
index ba9b21f..fd99774 100644
--- a/HDL_ON/UI/Music/MusicMain.cs
+++ b/HDL_ON/UI/Music/MusicMain.cs
@@ -12,6 +12,10 @@
//public MusicListViewMain() {
// Frame = this;
//}
+ public MusicMain()
+ {
+ Tag = "MusicMain";
+ }
public override void RemoveFromParent()
{
base.RemoveFromParent();
@@ -41,7 +45,7 @@
/// <summary>
/// 鏄剧ず鍔犺浇鐣岄潰
/// </summary>
- public static Loading Loading = new Loading();
+ public static Loading loading = new Loading();
VerticalRefreshLayout verticalRefresh;
public void Show()
@@ -68,11 +72,10 @@
verticalRefresh.BeginHeaderRefreshingAction += () =>
{
- SeachMusic();
- verticalRefresh.EndHeaderRefreshing();
+ SeachMusic(false);
};
- this.AddChidren(Loading);
+ this.AddChidren(loading);
if (A31MusicModel.A31MusicModelList.Count == 0)
{
@@ -90,6 +93,14 @@
{
continue;
}
+ if (A31MusicModel.A31MusicModelList.Count - 1 == i)
+ {
+ a31player.IsEnd = true;
+ }
+ else
+ {
+ a31player.IsEnd = false;
+ }
///鍔犺浇鐣岄潰鏃堕粯璁や笉鍦ㄧ嚎
///杩欓噷鏍囪鏄负浜嗕笉璇诲彇涓嶅湪绾挎挱鏀惧櫒鐘舵��
a31player.IsOnLine = false;
@@ -103,7 +114,7 @@
if (obj == null)
{
///杩欓噷瑕佽鍙栦富浠庡叧绯�
- // readServerOrClientMode(false);
+ readServerOrClientMode();
A31MusicModel.Save();
return;
}
@@ -133,20 +144,25 @@
if (Yes)
{
//涓轰簡绗竴娆¤繘鏉og涓�涓�;
- Loading.Start();
+ loading.Start();
}
SendMethod.Seach((obj) =>
{
if (obj == null)
{
- //readServerOrClientMode(true);
+ readServerOrClientMode();
A31MusicModel.Save();
+ if (!Yes)
+ {
+ ///绛夊緟璺戝畬鍦ㄥ叧闂�
+ verticalRefresh.EndHeaderRefreshing();
+ }
Application.RunOnMainThread(() =>
{
if (Yes)
{
//涓轰簡绗竴娆¤繘鏉og涓�涓�;
- Loading.Hide();
+ loading.Hide();
}
verticalRefresh.RemoveAll();
for (int i = 0; i < A31MusicModel.A31MusicModelList.Count; i++)
@@ -157,8 +173,17 @@
{
continue;
}
+ if (A31MusicModel.A31MusicModelList.Count - 1 == i)
+ {
+ a31player.IsEnd = true;
+ }
+ else
+ {
+ a31player.IsEnd = false;
+ }
MusicListView(a31player);
}
+
});
return;
}
@@ -193,16 +218,28 @@
musicView.View(verticalRefresh);
musicView.singerBtn.Text = a31player.A31PlayStatus.Artist;
musicView.songNameBtn.Text = a31player.A31PlayStatus.Title;
- musicView.musicNameBtn.Text = a31player.Name;
+ musicView.musicNameBtn.Text = new View.DialogView { }.NamePlayer(a31player);
musicView.regionBtn.TextID = StringId.region;
- if (a31player.A31PlayStatus.status == "play")
- {
- musicView.playBtn.IsSelected = true;
+ if (a31player.IsEnd) {
+ musicView.muiscFl.Height =Application.GetRealHeight(12 + 139 + 12);
}
- else
+ EventHandler<MouseEventArgs> clickMergence = (sender, e) =>
{
- musicView.playBtn.IsSelected = false;
- }
+ if (a31player.ServerClientType == 0)
+ {
+ new View.DialogView { }.PlayMergence();
+ }
+ else if (a31player.ServerClientType == 1)
+ {
+ new View.DialogView { }.DetachPlayMergence(a31player);
+
+ }
+ };
+ musicView.mergeBjBtn.MouseUpEventHandler += clickMergence;
+ musicView.mergeBtn.MouseUpEventHandler += clickMergence;
+ musicView.mergeIconBtn.MouseUpEventHandler += clickMergence;
+
+
musicView.clickBtn.MouseUpEventHandler += (sender, e) =>
{
A31MusicModel.Current = a31player;//褰撳墠鎾斁鍣�
@@ -211,7 +248,6 @@
a31PlayMusicPage.Show();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
-
///涓婁竴鏇茬偣鍑讳簨浠�
musicView.prevBtn.MouseDownEventHandler += (sender, e) =>
{
@@ -265,7 +301,7 @@
{
musicView.singerBtn.Text = a31player.A31PlayStatus.Artist;
musicView.songNameBtn.Text = a31player.A31PlayStatus.Title;
- musicView.musicNameBtn.Text = a31player.Name;
+ musicView.musicNameBtn.Text = new View.DialogView { }.NamePlayer(a31player);
if (a31player.A31PlayStatus.status == "play")
{
musicView.playBtn.IsSelected = true;
@@ -280,7 +316,97 @@
}
+ /// <summary>
+ /// 璇诲彇涓讳粠鍏崇郴
+ /// </summary>
+ void readServerOrClientMode()
+ {
+ try
+ {
+ for (int i = 0; i < A31MusicModel.A31MusicModelList.Count; i++)
+ {
+ var a31player = A31MusicModel.A31MusicModelList[i];
+ if (!a31player.IsOnLine)
+ {
+ continue;
+ }
+ try
+ {
+ a31player.ServerClientType = 0;
+ var result = SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:getSlaveList");
+ if (result == null && result == "Failed")
+ {
+ result = SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:getSlaveList");
+ }
+ if (result != null && result != "Failed")
+ {
+ a31player.Slave = Newtonsoft.Json.JsonConvert.DeserializeObject<Slaves>(result);
+ }
+ }
+ catch (Exception e)
+ {
+ var d = e.Message;
+ }
+ }
+ //鍒嗘瀽涓讳粠鍏崇郴
+ for (int i = 0; i < A31MusicModel.A31MusicModelList.Count; i++)
+ {
+ var a31player = A31MusicModel.A31MusicModelList[i];
+ if (!a31player.IsOnLine)
+ {
+ continue;
+ }
+ try
+ {
+ if (a31player.Slave != null && "0" != a31player.Slave.slaves)
+ {
+ a31player.ServerClientType = 1;//涓荤殑
+ string str = a31player.Name;
+ for (int j = 0; j < a31player.Slave.slave_list.Count; j++)
+ {
+
+ var slave = a31player.Slave.slave_list[j];
+ str = str + "+" + slave.name;
+ var tempA31Player = A31MusicModel.A31MusicModelList.Find((obj) => slave.uuid.Replace("uuid:", "") == obj.UniqueDeviceName);
+ if (tempA31Player == null)
+ {
+ A31MusicModel.A31MusicModelList.Add(new A31MusicModel
+ {
+ ServerClientType = -1,//浠庣殑
+ IPAddress = slave.ip,
+ MainPlayIP = a31player.IPAddress,
+ UniqueDeviceName = slave.uuid.Replace("uuid:", ""),
+ Name = slave.name,
+ IsCanShow = false,
+ IsOnLine = false,//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲�
+ });
+ }
+ //濡傛灉鎵惧埌灏辨洿鏂颁负浠庣殑
+ else
+ {
+ tempA31Player.ServerClientType = -1;//浠庣殑
+ tempA31Player.IPAddress = slave.ip;
+ tempA31Player.MainPlayIP = a31player.IPAddress;
+ tempA31Player.Name = slave.name;
+ tempA31Player.UniqueDeviceName = slave.uuid.Replace("uuid:", "");
+ tempA31Player.IsCanShow = false;
+ tempA31Player.IsOnLine = false;//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲�
+
+ }
+ }
+ a31player.MainPlayName = str;
+ }
+ }
+ catch (Exception e)
+ {
+ var ss = e.Message;
+ }
+ }
+
+ }
+ catch { }
+ }
}
--
Gitblit v1.8.0