protected async override Task ChangePageState(PageState state, string message = null) { if (state.Equals(PageState.LOADING)) { ListLayout.IsVisible = false; LoadingIndicator.IsVisible = true; } else if (this.state.Equals(PageState.LOADING)) { ListLayout.IsVisible = true; LoadingIndicator.IsVisible = false; } this.state = state; }
/// <summary> /// Change the state of the page, and control the page if it has to load. /// This method has to be override if the page need to change to any state. /// </summary> /// <param name="state">The new state of the page</param> /// <param name="message">The message to alert if it has content</param> protected virtual async Task ChangePageState(PageState state, string message = null) { if (state.Equals(PageState.LOADING)) { await Navigation.PushAsync(new LoadingPage(), true); } else if (this.state.Equals(PageState.LOADING)) { await Navigation.PopAsync(true); } this.state = state; if (message != null) { Alert(message); } }