Recover Settings access inside Xamarin App

This commit is contained in:
Javier Suárez Ruiz 2017-01-10 12:28:14 +01:00
parent f696ea6f5a
commit f2bd7e4cb6
5 changed files with 26 additions and 5 deletions

View File

@ -1,4 +1,6 @@
using eShopOnContainers.Services;
using eShopOnContainers.Core;
using eShopOnContainers.Core.Helpers;
using eShopOnContainers.Services;
using System.Threading.Tasks;
namespace eShopOnContainers.ViewModels.Base
@ -28,6 +30,7 @@ namespace eShopOnContainers.ViewModels.Base
{
DialogService = ViewModelLocator.Instance.Resolve<IDialogService>();
NavigationService = ViewModelLocator.Instance.Resolve<INavigationService>();
GlobalSetting.Instance.BaseEndpoint = Settings.UrlBase;
}
public virtual Task InitializeAsync(object navigationData)

View File

@ -3,11 +3,14 @@ using eShopOnContainers.ViewModels.Base;
using eShopOnContainers.Core.Models.Navigation;
using Xamarin.Forms;
using eShopOnContainers.Core.ViewModels.Base;
using System.Windows.Input;
namespace eShopOnContainers.Core.ViewModels
{
public class MainViewModel : ViewModelBase
{
{
public ICommand SettingsCommand => new Command(Settings);
public override Task InitializeAsync(object navigationData)
{
IsBusy = true;
@ -21,5 +24,10 @@ namespace eShopOnContainers.Core.ViewModels
return base.InitializeAsync(navigationData);
}
private void Settings()
{
NavigationService.NavigateToAsync<SettingsViewModel>();
}
}
}

View File

@ -102,7 +102,6 @@ namespace eShopOnContainers.Core.ViewModels
{
// Update remote endpoint (save to local storage)
Settings.UrlBase = endpoint;
GlobalSetting.Instance.BaseEndpoint = Settings.UrlBase;
}
}
}

View File

@ -18,8 +18,6 @@ namespace eShopOnContainers.Core.Views
protected override async void OnAppearing()
{
GlobalSetting.Instance.BaseEndpoint = Settings.UrlBase;
var content = this.Content;
this.Content = null;
this.Content = content;

View File

@ -13,6 +13,19 @@
iOS="eShop on Containers"
WinPhone="eShop on Containers"/>
</TabbedPage.Title>
<ContentPage.ToolbarItems>
<ToolbarItem
Command="{Binding SettingsCommand}"
Text="Settings">
<ToolbarItem.Icon>
<OnPlatform
x:TypeArguments="FileImageSource"
WinPhone="Assets/app_settings.png"
Android="app_settings"
iOS="app_settings"/>
</ToolbarItem.Icon>
</ToolbarItem>
</ContentPage.ToolbarItems>
<!-- CATALOG -->
<views:CatalogView
x:Name="HomeView">