From 84e76cf2fcbe26142750131d3c27eaac0335e40a Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 11 三月 2021 11:04:08 +0800
Subject: [PATCH] 上传一个添加红外宝 Ios 版本
---
HDL_ON/UI/UI2/FuntionControlView/Music/A31USBMusicList.cs | 268 ----------------------------------------------------
1 files changed, 4 insertions(+), 264 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/A31USBMusicList.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/A31USBMusicList.cs
index ff03775..3faba9c 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Music/A31USBMusicList.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Music/A31USBMusicList.cs
@@ -18,30 +18,17 @@
{
#region 鐣岄潰甯冨眬------
- this.BackgroundColor = Color.ViewColor;
+ this.BackgroundColor = MusicColor.ViewColor;
var topView = new TopView();
this.AddChidren(topView.TopFLayoutView());
topView.topNameBtn.TextID = StringId.usb;
topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
{
-
- if (updateSelectedMusicThread != null)
- {
- try
- {
- if (updateSelectedMusicThread.IsAlive)
- {
- updateSelectedMusicThread.Abort();
- ///鍏抽棴绾跨▼
- }
- }
- catch { }
- }
this.RemoveFromParent();
};
middViewLayout = new VerticalRefreshLayout
{
- BackgroundColor = Color.WhiteColor,
+ BackgroundColor = MusicColor.WhiteColor,
Y = topView.fLayout.Bottom,
Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
};
@@ -81,261 +68,14 @@
public void Show()
{
middViewLayout.RemoveAll();
- int number = 0;
- for (int i = 0; i < A31MusicModel.Current.USBList.Count; i++)
- {
- number++;
- var songs = A31MusicModel.Current.USBList[i];
- if (string.IsNullOrEmpty(songs.Title))
- {
- //闃叉姝屾洸鍚嶅瓧涓虹┖鎶涘紓甯�
- songs.Title = " ";
- }
- if (string.IsNullOrEmpty(songs.Artist))
- {
- //闃叉姝屾墜鍚嶅瓧涓虹┖鎶涘紓甯�
- songs.Artist = " ";
- }
- FrameLayout musicViewFl = new FrameLayout
- {
- Width = Application.GetRealWidth(375),
- Height = Application.GetRealHeight(44),
- };
- middViewLayout.AddChidren(musicViewFl);
- //鍒楄〃褰撳墠鎾斁闊充箰鍥炬爣
- Button playIconBtn = new Button
- {
- X = Application.GetRealWidth(16),
- Y = Application.GetRealHeight(10),
- Width = Application.GetMinRealAverage(24),
- Height = Application.GetMinRealAverage(24),
- UnSelectedImagePath = "MusicIcon/playStatus.png",
- Visible = false,
- Name = "playStatus",
- Tag = songs.URL,
- };
- musicViewFl.AddChidren(playIconBtn);
- //姝屾洸鎺т欢
- Button songBtn = new Button
- {
- X = Application.GetRealWidth(16),
- Y = Application.GetRealHeight(11),
- Width = Application.GetRealWidth(100),
- Height = Application.GetRealHeight(22),
- TextColor = Color.MusicTxet14Color,
- TextSize = TextSize.Text16,
- TextAlignment = TextAlignment.CenterLeft,
- Name = "song",
- Tag = songs.URL,
- Text = songs.Title.Trim()
- };
- musicViewFl.AddChidren(songBtn);
- var wText = songBtn.GetTextWidth();//鑾峰彇鏂囨湰瀹藉害
- ///(姝屾洸+姝屾墜)瀹藉害鏈�澶у�兼椂280
- if (wText > 280)
- {
- songBtn.Width = Application.GetRealWidth(280);
- }
- else
- {
- songBtn.Width = wText + 5;
- }
- //姝屾墜鎺т欢
- Button singerBtn = new Button
- {
- X = songBtn.Right,
- Y = Application.GetRealHeight(11),
- Width = Application.GetRealWidth(280 - songBtn.Width),
- Height = Application.GetRealHeight(22),
- TextColor = Color.MusicNoTxetColor,
- TextSize = TextSize.Text12,
- TextAlignment = TextAlignment.CenterLeft,
- //Text =("-" +songs.Artist).Trim(),
- Name = "singer",
- Tag = songs.URL,
- Text = "-" + songs.Artist.Trim()
- };
- musicViewFl.AddChidren(singerBtn);
- if (wText > 280)
- {
- ///姝屽悕闀垮害灏忎簬250鎵嶅彲浠ユ樉绀烘瓕鎵嬪嚭鏉�
- singerBtn.Width = Application.GetRealWidth(0);
- }
- //娣诲姞鍠滅埍闊充箰鎺т欢
- Button loveIcon = new Button
- {
- X = Application.GetRealWidth(291),
- Y = Application.GetRealHeight(8),
- Width = Application.GetMinRealAverage(28),
- Height = Application.GetMinRealAverage(28),
- UnSelectedImagePath = "MusicIcon/love.png",
- SelectedImagePath = "MusicIcon/loveSelected.png",
- };
- musicViewFl.AddChidren(loveIcon);
- loveIcon.MouseUpEventHandler += (sender, e) =>
- {
- loveIcon.IsSelected = !loveIcon.IsSelected;
- if (loveIcon.IsSelected)
- {
- ///鏌ユ壘闊充箰鏄惁瀛樺湪鍦ㄥ垪琛�
- var music1 = A31MusicModel.Current.LoveMusicInfoList.Find((m) => m.URL == songs.URL);
- if (music1 == null)
- {
- ///娌℃湁瀛樺湪灏辨坊鍔�
- A31MusicModel.Current.LoveMusicInfoList.Add(songs);
- }
- }
- else
- {
- ///鏌ユ壘闊充箰鏄惁瀛樺湪鍦ㄥ垪琛�
- var music1 = A31MusicModel.Current.LoveMusicInfoList.Find((m) => m.URL == songs.URL);
- if (music1 != null)
- {
- ///瀛樺湪灏卞垹闄�
- A31MusicModel.Current.LoveMusicInfoList.Remove(songs);
- }
-
- }
- A31MusicModel.Save();
- };
- var music = A31MusicModel.Current.LoveMusicInfoList.Find((m) => m.URL == songs.URL);
- if (music != null)
- {
- loveIcon.IsSelected = true;
- }
- else
- {
- loveIcon.IsSelected = false;
- }
-
- //娣诲姞鍒版垜鐨勫垪琛�
- Button addIcon = new Button
- {
- X = Application.GetRealWidth(335),
- Y = Application.GetRealHeight(8),
- Width = Application.GetMinRealAverage(28),
- Height = Application.GetMinRealAverage(28),
- UnSelectedImagePath = "MusicIcon/addMusic1.png",
- };
- musicViewFl.AddChidren(addIcon);
- addIcon.MouseUpEventHandler = (sender, e) =>
- {
- new View.DialogView { }.FieListView(songs);
- };
-
- //鐐瑰嚮鎺т欢
- Button clickBtn = new Button
- {
- Width = Application.GetRealWidth(280),
- Height = Application.GetRealHeight(44),
- Tag = number,//鏍囪鎾斁鍝竴棣栨瓕鏇�
- };
- musicViewFl.AddChidren(clickBtn);
- ///鐐瑰嚮鎾斁浜嬩欢
- clickBtn.MouseUpEventHandler += (sender, e) =>
- {
-
- System.Threading.Tasks.Task.Run(() =>
- {
- System.Threading.Thread.Sleep(50);
- Application.RunOnMainThread(() =>
- {
- //绉婚櫎鐣岄潰
- A31MusicModel.Current.A31PlayStatus.Title = songBtn.Text;
- MainPage.BasePageView.RemoveViewByTag("Music");
- System.Threading.Tasks.Task.Run(() =>
- {
- SendMethod.ListMusicPlay("USBDiskQueue", clickBtn.Tag,A31MusicModel.Current);
- });
- });
- });
-
- };
-
- }
+ UI2.FuntionControlView.Music.UpdateThread.playMusuc(middViewLayout, "USB", "USBDiskQueue",A31MusicModel.Current.USBList, A31MusicModel.Current);
}
/// <summary>
/// 瀹氭椂鏇存柊褰撳墠鎾斁闊充箰
/// </summary>
- System.Threading.Thread updateSelectedMusicThread;
public void UpdateSelectedMusic()
{
- updateSelectedMusicThread = new System.Threading.Thread(() =>
- {
- while (this.Parent != null)
- {
- System.Threading.Thread.Sleep(1000);
- Application.RunOnMainThread(() =>
- {
- try
- {
- for (int i = 0; i < middViewLayout.ChildrenCount; i++)
- {
- FrameLayout view = (FrameLayout)middViewLayout.GetChildren(i);
- var volIconBtn = (Button)view.GetChildren(0);//鐩存帴FrameLayout鐖舵帶浠舵壘鍒拌鎺т欢Button
- var songNameBtn = (Button)view.GetChildren(1);//鐩存帴FrameLayout鐖舵帶浠舵壘鍒拌鎺т欢Button
- var artistNameBtn = (Button)view.GetChildren(2);//鐩存帴FrameLayout鐖舵帶浠舵壘鍒拌鎺т欢Button
- if (A31MusicModel.Current.A31PlayStatus.TrackURL == songNameBtn.Tag.ToString())
- {
- volIconBtn.Visible = true;
- songNameBtn.TextColor = Color.SelectedColor;
- songNameBtn.X = Application.GetRealWidth(48);
- artistNameBtn.X = songNameBtn.Right;
- artistNameBtn.TextColor = Color.SelectedColor;
- }
- else
- {
- volIconBtn.Visible = false;
- songNameBtn.TextColor = Color.MusicTxet14Color;
- songNameBtn.X = Application.GetRealWidth(16);
- artistNameBtn.X = songNameBtn.Right;
- artistNameBtn.TextColor = Color.MusicNoTxetColor;
- }
-
-
- }
- }
- catch { }
-
- });
- }
- });
- updateSelectedMusicThread.Start();
- }
- /// <summary>
- /// 鏁版嵁灏佽
- /// </summary>
- /// <param name="tag"></param>
- void PlayStrinfg(object tag)
- {
- System.Text.StringBuilder sb = new System.Text.StringBuilder();
- sb.AppendLine("<s:Envelope s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\">");
- sb.AppendLine("<s:Body>");
- sb.AppendLine("<u:PlayQueueWithIndex xmlns:u=\"urn:schemas-wiimu-com:service:PlayQueue:1\">");
- sb.AppendLine("<QueueName>USBDiskQueue</QueueName>");
- sb.AppendLine("<Index>" + tag + "</Index>");
- sb.AppendLine("</u:PlayQueueWithIndex>");
- sb.AppendLine("</s:Body>");
- sb.AppendLine("</s:Envelope>");
-
- Paly(sb.ToString());
- }
- /// <summary>
- /// 鎾斁鍛戒护
- /// </summary>
- /// <param name="s"></param>
- void Paly(string s)
- {
-
- System.Net.WebClient webClient = new System.Net.WebClient();
- webClient.Headers.Add("SOAPACTION", "\"urn:schemas-wiimu-com:service:PlayQueue:1#PlayQueueWithIndex\"");
- webClient.Headers.Add("CONTENT-TYPE", "text/xml;charset=\"utf-8\"");
- try
- {
- byte[] bytes = webClient.UploadData(new Uri("http://" + A31MusicModel.Current.IPAddress + ":" + A31MusicModel.Current.Port + "/upnp/control/PlayQueue1"), "POST", System.Text.Encoding.UTF8.GetBytes(s));
- var ab = System.Text.Encoding.UTF8.GetString(bytes, 0, bytes.Length);
- }
- catch { }
+ UI2.FuntionControlView.Music.UpdateThread.updateThread(this, middViewLayout, A31MusicModel.Current);
}
}
--
Gitblit v1.8.0