protected override void OnStart() { var refitSettings = new RefitSettings(); var jsonSettings = new JsonSerializerSettings { MissingMemberHandling = MissingMemberHandling.Ignore }; refitSettings.ContentSerializer = new NewtonsoftJsonContentSerializer(jsonSettings); var api = RestService.For <IMusicPlayerAPI>(HOST, refitSettings); var defaultCover = ImageSource.FromResource("MusicPlayer.Resources.defaultCover.png", typeof(App)); var defaultArtist = ImageSource.FromResource("MusicPlayer.Resources.defaultArtist.png", typeof(App)); var player = new PlayingPage(); var loadPlaylistCommand = ((PlayingViewModel)player.BindingContext).LoadPlaylistCommand; DependencyHelper.Builder.RegisterInstance(api); DependencyHelper.Builder.RegisterInstance(new List <Song>()); DependencyHelper.Builder.RegisterInstance(defaultCover).Named <ImageSource>("defaultCover"); DependencyHelper.Builder.RegisterInstance(defaultArtist).Named <ImageSource>("defaultArtist"); DependencyHelper.Builder.RegisterInstance(loadPlaylistCommand).Named <Command>("loadPlaylist"); DependencyHelper.Builder.RegisterInstance(new AppShell(player)); DependencyHelper.BuildContainer(); DependencyResolver.ResolveUsing(type => DependencyHelper.Container.IsRegistered(type) ? DependencyHelper.Container.Resolve(type) : null); MainPage = DependencyService.Resolve <AppShell>(); }
public AppShell(PlayingPage player) { InitializeComponent(); var artistsTab = GetArtistsTab(); var albumTab = GetAlbumsTab(); var playerTab = GetPlayerTab(player); Tabbar.Items.Add(artistsTab); Tabbar.Items.Add(albumTab); Tabbar.Items.Add(playerTab); }
private Tab GetPlayerTab(PlayingPage player) { var tab = new Tab(); var shellContent = new ShellContent { Content = player, Route = "playingpage" }; tab.Items.Add(shellContent); tab.Route = "player"; tab.Title = "Playing"; tab.Icon = ImageSource.FromResource("MusicPlayer.Resources.playerIcon.png", typeof(AppShell)); return(tab); }