public void SetupViewControllers(Artist artist) { var onlineArtist = artist as OnlineArtist; if (onlineArtist != null) { ViewControllers = new[] { onlineController = new OnlineArtistDetailsViewController { Artist = artist, Title = Strings.Online, }, }; return; } var vcs = new List <UIViewController>(); vcs.Add(albumsController = new ArtistAlbumsViewController { Artist = artist, Title = Strings.Albums }); vcs.Add(new ArtistSongsViewController { Artist = artist, Title = Strings.Songs }); if (!Settings.DisableAllAccess) { vcs.Add(onlineController = new OnlineArtistDetailsViewController { Artist = artist, Title = Strings.Online, }); } ViewControllers = vcs.ToArray(); }
private async void Model_ItemSelected(object sender, SimpleTables.EventArgs <MediaItemBase> e) { //Check online first var onlineSong = e.Data as OnlineSong; if (onlineSong != null) { if (!await MusicManager.Shared.AddTemp(onlineSong)) { App.ShowAlert(Strings.Sorry, Strings.ThereWasAnErrorPlayingTrack); return; } await PlaybackManager.Shared.PlayNow(onlineSong, onlineSong.TrackData.MediaType == MediaType.Video); return; } var song = e.Data as Song; if (song != null) { await PlaybackManager.Shared.PlayNow(song); return; } var album = e.Data as Album; if (album != null) { var vc = new AlbumDetailsViewController { Album = album, }; this.NavigationController.PushViewController(vc, true); return; } var onlineArtist = e.Data as OnlineArtist; if (onlineArtist != null) { var vc = new OnlineArtistDetailsViewController { Artist = onlineArtist, }; this.NavigationController.PushViewController(vc, true); return; } var artist = e.Data as Artist; if (artist != null) { var vc = new ArtistDetailViewController { Artist = artist, }; this.NavigationController.PushViewController(vc, true); return; } }
async void ModelOnItemSelected(object sender, EventArgs <MediaItemBase> eventArgs) { //Check online first var onlineSong = eventArgs.Data as OnlineSong; if (onlineSong != null) { if (!await MusicManager.Shared.AddTemp(onlineSong)) { App.ShowAlert(Strings.Sorry, Strings.ThereWasAnErrorPlayingTrack); return; } await PlaybackManager.Shared.PlayNow(onlineSong, onlineSong.TrackData.MediaType == MediaType.Video); return; } var song = eventArgs.Data as Song; if (song != null) { await PlaybackManager.Shared.PlayNow(song); return; } var album = eventArgs.Data as Album; if (album != null) { var vc = new AlbumDetailsViewController { Album = album, }; this.NavigationController.PushViewController(vc, true); return; } var onlineArtist = eventArgs.Data as OnlineArtist; if (onlineArtist != null) { var vc = new OnlineArtistDetailsViewController { Artist = onlineArtist, }; this.NavigationController.PushViewController(vc, true); return; } var artist = eventArgs.Data as Artist; if (artist != null) { var vc = new ArtistDetailViewController { Artist = artist, }; this.NavigationController.PushViewController(vc, true); return; } var onlineRadio = eventArgs.Data as OnlineRadioStation; if (onlineRadio != null) { using (new Spinner(Strings.CreatingStation)) { var statsion = await MusicManager.Shared.CreateRadioStation(onlineRadio); await PlaybackManager.Shared.Play(statsion); } return; } var radio = eventArgs.Data as RadioStation; if (radio != null) { await PlaybackManager.Shared.Play(radio); return; } var onlinePlaylist = eventArgs.Data as OnlinePlaylist; if (onlinePlaylist != null) { var vc = new OnlinePlaylistViewController() { Playlist = onlinePlaylist, }; this.NavigationController.PushViewController(vc, true); return; } App.ShowNotImplmented(); }