using System;
using System.Collections.Generic;
using Shared;
namespace HDL_ON.UI.Music
{
public class A31USBMusicList : FrameLayout
{
public A31USBMusicList()
{
Tag = "Music";
}
VerticalRefreshLayout middViewLayout;
///
/// 先加载界面出来
///
public void UIView()
{
#region 界面布局------
this.BackgroundColor = Color.ViewColor;
var topView = new TopView();
this.AddChidren(topView.TopFLayoutView());
topView.topNameBtn.TextID = StringId.usb;
topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
{
this.RemoveFromParent();
};
middViewLayout = new VerticalRefreshLayout
{
BackgroundColor = Color.WhiteColor,
Y = topView.fLayout.Bottom,
Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
};
this.AddChidren(middViewLayout);
middViewLayout.BeginHeaderRefreshingAction += () =>
{
//System.Threading.Tasks.Task.Run(() =>
//{
// try
// {
// var list = SendMethod.GetUsbList();
// A31MusicModel.Current.USBList.Clear();
// A31MusicModel.Current.USBList.AddRange(list);
// }
// catch { }
// finally
// {
// Application.RunOnMainThread(() =>
// {
// Show();
// middViewLayout.EndHeaderRefreshing();
// });
// }
//});
var list = SendMethod.GetUsbList(A31MusicModel.Current);
A31MusicModel.Current.USBList.Clear();
A31MusicModel.Current.USBList.AddRange(list);
Show();
middViewLayout.EndHeaderRefreshing();
};
#endregion
}
///
/// 加载数据的方法
///
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];
View.SongView songView = new View.SongView();
songView.SongFrameLayout(middViewLayout, songs);
// 添加喜爱音乐控件
songView.loveIcon.MouseUpEventHandler += (sender, e) =>
{
songView.loveIcon.IsSelected = !songView.loveIcon.IsSelected;
if (songView.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();
};
//添加到我的列表
songView.addIcon.MouseUpEventHandler = (sender, e) =>
{
new View.DialogView { }.FieListView(songs);
};
songView.clickBtn.Tag = number;//标记播放哪一首歌曲
///点击播放事件
songView.clickBtn.MouseUpEventHandler += (sender, e) =>
{
System.Threading.Tasks.Task.Run(() =>
{
System.Threading.Thread.Sleep(50);
Application.RunOnMainThread(() =>
{
//移除界面
A31MusicModel.Current.A31PlayStatus.Title = songView.songBtn.Text;
MainPage.BasePageView.RemoveViewByTag("Music");
System.Threading.Tasks.Task.Run(() =>
{
SendMethod.ListMusicPlay("USBDiskQueue", songView.clickBtn.Tag, A31MusicModel.Current);
});
});
});
};
}
}
///
/// 定时更新当前播放音乐
///
public void UpdateSelectedMusic()
{
UI2.FuntionControlView.Music.UpdateThread.updateThread(this, middViewLayout, A31MusicModel.Current);
}
}
}