protected override void OnAppearing() { _book = DaisyPlayer.Instance.GetDaisyBook(); if (_book != null) { int selectedLevel = DaisyPlayer.Instance.GetPlayerInfo().Position.NavigationLevel; _model.Items = _book.Body.Where(w => w.Level <= selectedLevel).ToList(); listView.SetBinding(ListView.ItemsSourceProperty, new Binding(".")); listView.BindingContext = _model.Items; } _model.Loading = false; UserDialogs.Instance.HideLoading(); }
protected override void OnAppearing() { _dbook = DaisyPlayer.Instance.GetDaisyBook(); if (_dbook == null || _dbook.Id != _id) { if (Directory.Exists($"{Session.Instance.GetDataDir()}/{this._id}") && File.Exists($"{Session.Instance.GetDataDir()}/{this._id}/ncc.json")) { var abookJson = File.ReadAllText($"{Session.Instance.GetDataDir()}/{this._id}/ncc.json"); _dbook = JsonConvert.DeserializeObject <DaisyBook>(abookJson); DaisyPlayer.Instance.LoadBook(_dbook); _model.Title = _dbook.Title; _model.Loading = false; // Update status Instance_StatusUpdate(DaisyPlayer.Instance.GetPlayerInfo()); } else { UserDialogs.Instance.Alert( new AlertConfig { Title = "Aviso", Message = "Audiolibro no encontrado, por favor descárgalo de nuevo.", OkText = "Aceptar", OnAction = async() => { await AudioBookStore.Instance.Delete(this._id); DaisyPlayer.Instance.CleanupPlayerInfo(); DaisyPlayer.Instance.CleanupDaisyBook(); await Navigation.PopToRootAsync(true); } } ); } } _model.Loading = false; }