| | |
| | | { |
| | | public class DialogView |
| | | { |
| | | |
| | | /// <summary> |
| | | ///弹窗文件夹列表界面 |
| | | /// </summary> |
| | | /// <param name="musicInfo"></param> |
| | | public void FieListView(MusicInfo musicInfo) |
| | | { |
| | | //主控件 |
| | |
| | | |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 选中组合的播放器的界面 |
| | | /// </summary> |
| | | public void PlayMergence() |
| | | { |
| | | //主控件 |
| | | 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(50), |
| | | }; |
| | | 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.selectedMergence, |
| | | 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); |
| | | |
| | | VerticalScrolViewLayout verticalScrolViewLayout = new VerticalScrolViewLayout |
| | | { |
| | | Y = Application.GetRealHeight(50), |
| | | Height = dialogFra.Height - Application.GetRealHeight(50), |
| | | Width = Application.GetRealWidth(344), |
| | | }; |
| | | dialogFra.AddChidren(verticalScrolViewLayout); |
| | | var playList = new List<A31MusicModel>(); |
| | | for (int i = 0; i < A31MusicModel.A31MusicModelList.Count; i++) |
| | | { |
| | | var player = A31MusicModel.A31MusicModelList[i]; |
| | | if (!player.IsOnLine) |
| | | { |
| | | //不在线不显示; |
| | | continue; |
| | | } |
| | | RowLayout PlayRow = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | LineColor = Color.WhiteColor, |
| | | SubViewWidth = Application.GetRealWidth(80),//改变编辑控件宽度多少; |
| | | }; |
| | | verticalScrolViewLayout.AddChidren(PlayRow); |
| | | |
| | | |
| | | //播放器名称控件 |
| | | Button PlayNameBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(20), |
| | | Y = Application.GetRealHeight(15), |
| | | Width = Application.GetRealWidth(150), |
| | | Height = Application.GetRealHeight(20), |
| | | TextColor = Color.TextColor, |
| | | TextSize = TextSize.Text14, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = player.Name, |
| | | }; |
| | | PlayRow.AddChidren(PlayNameBtn); |
| | | |
| | | |
| | | //选中图标控件 |
| | | Button selectedIconBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(303), |
| | | Y = Application.GetRealHeight(11), |
| | | Width = Application.GetMinRealAverage(28), |
| | | Height = Application.GetMinRealAverage(28), |
| | | UnSelectedImagePath = "MusicIcon/noSelectedIcon.png", |
| | | SelectedImagePath = "MusicIcon/selectedIcon.png", |
| | | }; |
| | | PlayRow.AddChidren(selectedIconBtn); |
| | | |
| | | ///加大几点范围 |
| | | Button clickBtn = new Button |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | }; |
| | | PlayRow.AddChidren(clickBtn); |
| | | |
| | | clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | clickBtn.IsSelected = !clickBtn.IsSelected; |
| | | selectedIconBtn.IsSelected = clickBtn.IsSelected; |
| | | var musicPlayer = playList.Find((c) => c.UniqueDeviceName == player.UniqueDeviceName); |
| | | if (selectedIconBtn.IsSelected) |
| | | { |
| | | if (musicPlayer == null) |
| | | { |
| | | playList.Add(player); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (musicPlayer != null) |
| | | { |
| | | playList.Remove(player); |
| | | } |
| | | } |
| | | }; |
| | | //线 |
| | | Button lineBtn = new Button |
| | | { |
| | | Y = PlayRow.Height - 1, |
| | | X = Application.GetRealWidth(20), |
| | | Width = Application.GetRealWidth(304), |
| | | Height = 1, |
| | | BackgroundColor = Color.LineColor, |
| | | }; |
| | | PlayRow.AddChidren(lineBtn); |
| | | } |
| | | confirmBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (playList.Count <= 1) |
| | | { |
| | | new PublicAssmebly().TipMsgAutoClose("至少选中两个以上播放器", false); |
| | | return; |
| | | } |
| | | PlayerView(dialog, playList); |
| | | }; |
| | | } |
| | | /// <summary> |
| | | /// 选中主播放器的界面 |
| | | /// </summary> |
| | | /// <param name="musicList"></param> |
| | | void PlayerView(Dialog dialogF ,List<A31MusicModel> musicList) |
| | | { |
| | | //主控件 |
| | | 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(50), |
| | | }; |
| | | 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, |
| | | 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 += (sender, e) => |
| | | { |
| | | |
| | | }; |
| | | VerticalScrolViewLayout verticalScrolViewLayout = new VerticalScrolViewLayout |
| | | { |
| | | Y = Application.GetRealHeight(50), |
| | | Height = dialogFra.Height - Application.GetRealHeight(50), |
| | | Width = Application.GetRealWidth(344), |
| | | }; |
| | | dialogFra.AddChidren(verticalScrolViewLayout); |
| | | //记录选中状态 |
| | | Button selectedBtn = new Button() { Tag="No"}; |
| | | for (int i = 0; i < musicList.Count; i++) |
| | | { |
| | | var player = musicList[i]; |
| | | RowLayout addFlieRow = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | LineColor = Color.WhiteColor, |
| | | }; |
| | | verticalScrolViewLayout.AddChidren(addFlieRow); |
| | | |
| | | //播放器名称控件 |
| | | Button PlayNameBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(20), |
| | | Y = Application.GetRealHeight(15), |
| | | Width = Application.GetRealWidth(150), |
| | | Height = Application.GetRealHeight(20), |
| | | TextColor = Color.TextColor, |
| | | TextSize = TextSize.Text14, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = player.Name, |
| | | }; |
| | | addFlieRow.AddChidren(PlayNameBtn); |
| | | |
| | | //选中图标控件 |
| | | Button selectedIconBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(303), |
| | | Y = Application.GetRealHeight(11), |
| | | Width = Application.GetMinRealAverage(28), |
| | | Height = Application.GetMinRealAverage(28), |
| | | UnSelectedImagePath = "MusicIcon/noSelectedIcon.png", |
| | | SelectedImagePath = "MusicIcon/selectedIcon.png", |
| | | }; |
| | | addFlieRow.AddChidren(selectedIconBtn); |
| | | ///加大几点范围 |
| | | Button clickBtn = new Button |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | }; |
| | | addFlieRow.AddChidren(clickBtn); |
| | | clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | selectedBtn.IsSelected = false; |
| | | selectedBtn.Tag = "Yes"; |
| | | selectedBtn = selectedIconBtn; |
| | | selectedBtn.IsSelected = true; |
| | | }; |
| | | //线 |
| | | Button lineBtn = new Button |
| | | { |
| | | Y = addFlieRow.Height - 1, |
| | | X = Application.GetRealWidth(20), |
| | | Width = Application.GetRealWidth(304), |
| | | Height = 1, |
| | | BackgroundColor = Color.LineColor, |
| | | }; |
| | | addFlieRow.AddChidren(lineBtn); |
| | | } |
| | | |
| | | confirmBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (selectedBtn.Tag.ToString() == "No") |
| | | { |
| | | new PublicAssmebly().TipMsgAutoClose("还没选中播放器", false); |
| | | return; |
| | | } |
| | | dialogF.Close(); |
| | | dialog.Close(); |
| | | }; |
| | | |
| | | } |
| | | } |
| | | } |