using System;
|
using System.Collections.Generic;
|
using System.Security;
|
using Shared;
|
namespace HDL_ON.UI.Music
|
{
|
public class A31MusicSourcePage:FrameLayout
|
{
|
public A31MusicSourcePage()
|
{
|
Tag = "Music";
|
}
|
|
|
public void Show()
|
{
|
#region 界面布局------
|
this.BackgroundColor = MusicColor.ViewColor;
|
var topView = new TopView();
|
this.AddChidren(topView.TopFLayoutView());
|
topView.topNameBtn.TextID = StringId.set;
|
topView.clickBackBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
this.RemoveFromParent();
|
};
|
var middViewLayout = new VerticalScrolViewLayout
|
{
|
Y = topView.fLayout.Bottom,
|
Height = Application.GetRealHeight(H_W.H - H_W.T_Height),
|
};
|
this.AddChidren(middViewLayout);
|
|
#region 基础信息( 播放器 蓝牙 区域)
|
FrameLayout fL1 = new FrameLayout
|
{
|
Height = Application.GetRealHeight(202),
|
Width = Application.GetRealWidth(375),
|
};
|
middViewLayout.AddChidren(fL1);
|
|
View.MusicSourceView musicIfonView = new View.MusicSourceView();
|
musicIfonView.fLayout.Height = Application.GetRealHeight(44);
|
musicIfonView.textBtn.TextID = StringId.information;
|
musicIfonView.textBtn.TextColor = MusicColor.SelectedColor;
|
musicIfonView.textBtn.TextSize = TextSize.Text16;
|
musicIfonView.inputTextBtn.Visible = false;
|
musicIfonView.nextLevelBtn.Visible = false;
|
musicIfonView.FrameLayoutView(fL1, false);
|
|
View.MusicSourceView playNameView = new View.MusicSourceView();
|
playNameView.fLayout.Y = musicIfonView.fLayout.Bottom;
|
playNameView.textBtn.TextID = StringId.playerName;
|
playNameView.inputTextBtn.Text = A31MusicModel.Current.Name;
|
playNameView.FrameLayoutView(fL1, false);
|
|
View.MusicSourceView bluetoothNameView = new View.MusicSourceView();
|
bluetoothNameView.fLayout.Y = playNameView.fLayout.Bottom;
|
bluetoothNameView.textBtn.TextID = StringId.bluetoothName;
|
bluetoothNameView.inputTextBtn.Text = A31MusicModel.Current.Name;
|
bluetoothNameView.FrameLayoutView(fL1, false);
|
|
View.MusicSourceView areaText = new View.MusicSourceView();
|
areaText.fLayout.Y = bluetoothNameView.fLayout.Bottom;
|
areaText.FrameLayoutView(fL1, false);
|
areaText.nextLevelBtn.X = Application.GetRealWidth(339);
|
areaText.nextLevelBtn.Y = Application.GetRealHeight(17);
|
areaText.nextLevelBtn.Width = Application.GetMinRealAverage(16);
|
areaText.nextLevelBtn.Height = Application.GetMinRealAverage(16);
|
areaText.nextLevelBtn.UnSelectedImagePath = "MusicIcon/sourceNetx.png";
|
areaText.lineBtn.BackgroundColor = MusicColor.WhiteColor;
|
areaText.textBtn.X = Application.GetRealWidth(16);
|
areaText.textBtn.TextID = StringId.region;
|
areaText.inputTextBtn.Text = A31MusicModel.Current.GetRoomListName();
|
|
#endregion
|
|
#region 歌单(我的最爱 我的列表)
|
FrameLayout fL2 = new FrameLayout
|
{
|
Height = Application.GetRealHeight(152),
|
Width = Application.GetRealWidth(375),
|
};
|
middViewLayout.AddChidren(fL2);
|
|
View.MusicSourceView playListView = new View.MusicSourceView();
|
playListView.fLayout.Height = Application.GetRealHeight(44);
|
playListView.textBtn.TextID = StringId.playList;
|
playListView.textBtn.TextColor = MusicColor.SelectedColor;
|
playListView.textBtn.TextSize = TextSize.Text16;
|
playListView.inputTextBtn.Visible = false;
|
playListView.nextLevelBtn.Visible = false;
|
playListView.FrameLayoutView(fL2, false);
|
|
View.MusicSourceView myLoveView = new View.MusicSourceView();
|
myLoveView.fLayout.Y = playListView.fLayout.Bottom;
|
myLoveView.iconBtn.UnSelectedImagePath = "MusicIcon/myLove.png";
|
myLoveView.textBtn.TextID = StringId.myLove;
|
myLoveView.FrameLayoutView(fL2);
|
|
View.MusicSourceView myListView = new View.MusicSourceView();
|
myListView.fLayout.Y = myLoveView.fLayout.Bottom;
|
myListView.iconBtn.UnSelectedImagePath = "MusicIcon/myList.png";
|
myListView.textBtn.TextID = StringId.myList;
|
myListView.FrameLayoutView(fL2);
|
|
#endregion
|
|
#region 选择音源( 本地音乐,USB,在线电台,QQ音乐,蓝牙,线路输入)
|
FrameLayout fL3 = new FrameLayout
|
{
|
Height = Application.GetRealHeight(352),
|
Width = Application.GetRealWidth(375),
|
};
|
middViewLayout.AddChidren(fL3);
|
|
View.MusicSourceView selectedSourceView = new View.MusicSourceView();
|
selectedSourceView.fLayout.Height = Application.GetRealHeight(44);
|
selectedSourceView.textBtn.TextID = StringId.selectedSource;
|
selectedSourceView.textBtn.TextColor = MusicColor.SelectedColor;
|
selectedSourceView.textBtn.TextSize = TextSize.Text16;
|
selectedSourceView.inputTextBtn.Visible = false;
|
selectedSourceView.nextLevelBtn.Visible = false;
|
selectedSourceView.FrameLayoutView(fL3, false);
|
|
View.MusicSourceView localMusicSourceView = new View.MusicSourceView();
|
localMusicSourceView.fLayout.Y = selectedSourceView.fLayout.Bottom;
|
localMusicSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/localMusic.png";
|
localMusicSourceView.textBtn.TextID = StringId.localMusic;
|
localMusicSourceView.FrameLayoutView(fL3);
|
|
View.MusicSourceView usbSourceView = new View.MusicSourceView();
|
usbSourceView.fLayout.Y = localMusicSourceView.fLayout.Bottom;
|
usbSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/usb.png";
|
usbSourceView.textBtn.TextID = StringId.usb;
|
usbSourceView.FrameLayoutView(fL3);
|
|
View.MusicSourceView radioSourceView = new View.MusicSourceView();
|
radioSourceView.fLayout.Y = usbSourceView.fLayout.Bottom;
|
radioSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/radio.png";
|
radioSourceView.textBtn.TextID = StringId.radio;
|
//radioSourceView.FrameLayoutView(fL3);暂时隐藏在线电台
|
|
View.MusicSourceView qqMusicSourceView = new View.MusicSourceView();
|
qqMusicSourceView.fLayout.Y = usbSourceView.fLayout.Bottom;
|
qqMusicSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/qqMusic.png";
|
qqMusicSourceView.textBtn.TextID = StringId.qqMusic;
|
qqMusicSourceView.FrameLayoutView(fL3);
|
|
View.MusicSourceView bluetoothSourceView = new View.MusicSourceView();
|
bluetoothSourceView.fLayout.Y = qqMusicSourceView.fLayout.Bottom;
|
bluetoothSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/bluetooth.png";
|
bluetoothSourceView.textBtn.TextID = StringId.bluetooth;
|
bluetoothSourceView.FrameLayoutView(fL3);
|
|
View.MusicSourceView lineSourceView = new View.MusicSourceView();
|
lineSourceView.fLayout.Y = bluetoothSourceView.fLayout.Bottom;
|
lineSourceView.iconBtn.UnSelectedImagePath = "MusicIcon/line.png";
|
lineSourceView.textBtn.TextID = StringId.line;
|
lineSourceView.FrameLayoutView(fL3);
|
|
|
#endregion
|
|
#endregion
|
|
#region 所有点击事件
|
///播放器修改名称事件
|
playNameView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
new View.TipView().InputBox(StringId.modifyName, A31MusicModel.Current.Name, StringId.nameNull, (playerName) =>
|
{
|
playNameView.inputTextBtn.Text = playerName;
|
A31MusicModel.Current.Name = playerName;
|
string url = "http://" + A31MusicModel.Current.IPAddress + "/httpapi.asp?command=setDeviceName:" + A31MusicModel.Current.Name;
|
SendMethod.SendCommand(url);
|
});
|
|
};
|
///蓝牙修改名称事件
|
bluetoothNameView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
new View.TipView().InputBox(StringId.modifyName, A31MusicModel.Current.Name, StringId.nameNull, (bluetoothName) =>
|
{
|
bluetoothNameView.inputTextBtn.Text = bluetoothName;
|
SendMethod.ModifyBluetoothName("MCU+PAS+BT" + bluetoothName.Trim() + "*&");
|
});
|
|
};
|
///区域修改的事件
|
areaText.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
ChooseRoomPage chooseRoomPage = new ChooseRoomPage(A31MusicModel.Current, () =>
|
{
|
areaText.inputTextBtn.Text = A31MusicModel.Current.GetRoomListName();
|
A31MusicModel.Save();
|
});
|
MainPage.BasePageView.AddChidren(chooseRoomPage);
|
chooseRoomPage.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
///我的喜爱事件
|
myLoveView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
//A31LoveList a31LoveList = new A31LoveList();
|
//MainPage.BasePageView.AddChidren(a31LoveList);
|
//MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
//a31LoveList.Show();
|
//a31LoveList.UpdateSelectedFile();
|
|
A31LoveMusicList a31LoveMusicList = new A31LoveMusicList();
|
MainPage.BasePageView.AddChidren(a31LoveMusicList);
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
a31LoveMusicList.Show();
|
a31LoveMusicList.UpdateSelectedMusic();
|
|
};
|
///我的列表事件
|
myListView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
A31MyList a31MyList = new A31MyList();
|
MainPage.BasePageView.AddChidren(a31MyList);
|
a31MyList.Show();
|
a31MyList.UpdateSelectedFile();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
///本地音乐事件
|
localMusicSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
A31LocalMusicList a31LocalMusicList = new A31LocalMusicList();
|
MainPage.BasePageView.AddChidren(a31LocalMusicList);
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
a31LocalMusicList.Show();
|
a31LocalMusicList.UpdateSelectedMusic();
|
};
|
///USB事件
|
usbSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
A31USBMusicList usbMusic = new A31USBMusicList();
|
MainPage.BasePageView.AddChidren(usbMusic);
|
usbMusic.UIView();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
Loading loading = new Loading();
|
usbMusic.AddChidren(loading);
|
loading.Start();
|
System.Threading.Tasks.Task.Run(() =>
|
{
|
try
|
{
|
if (A31MusicModel.Current.USBList.Count == 0)
|
{
|
//进来读一次(注意:播放地址可能会改变,导致播放不了音乐;解决:进来都去去读取最新数据)
|
var list = SendMethod.GetUsbList(A31MusicModel.Current);
|
A31MusicModel.Current.USBList.AddRange(list);
|
}
|
}
|
catch
|
{
|
}
|
finally
|
{
|
Application.RunOnMainThread(() =>
|
{
|
loading.Hide();
|
usbMusic.Show();
|
usbMusic.UpdateSelectedMusic();
|
});
|
}
|
});
|
};
|
///在线电台事件
|
radioSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
Loading loading = new Loading();
|
this.AddChidren(loading);
|
loading.Start();
|
System.Threading.Tasks.Task.Run(() =>
|
{
|
var radioList = SendMethod.ReadRadioList("http://opml.radiotime.com/Browse.ashx?partnerId=yvcOjvJP");
|
Application.RunOnMainThread(() =>
|
{
|
loading.Hide();
|
A31Radio a31Radio = new A31Radio();
|
MainPage.BasePageView.AddChidren(a31Radio);
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
a31Radio.Show(radioList);
|
});
|
});
|
};
|
///QQ音乐事件
|
qqMusicSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
string str = "com.tencent.qqmusic";
|
if (Application.DeviceType == Device.Ios)
|
{
|
str = "qqmusic:";
|
}
|
CommonClass.OpenApp(str);
|
};
|
///蓝牙事件
|
bluetoothSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
this.RemoveFromParent();
|
string url = "http://" + A31MusicModel.Current.IPAddress + "/httpapi.asp?command=setPlayerCmd:switchmode:bluetooth";
|
SendMethod.SendCommand(url);
|
};
|
///线路输入事件
|
lineSourceView.clickBtn.MouseUpEventHandler += (sender, e) =>
|
{
|
this.RemoveFromParent();
|
string url = "http://" + A31MusicModel.Current.IPAddress + "/httpapi.asp?command=setPlayerCmd:switchmode:line-in";
|
SendMethod.SendCommand(url);
|
};
|
|
|
#endregion
|
}
|
}
|
}
|