Browse Source

Recover Settings access inside Xamarin App

pull/49/merge
Javier Suárez Ruiz 8 years ago
parent
commit
f2bd7e4cb6
5 changed files with 26 additions and 5 deletions
  1. +4
    -1
      src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/Base/ViewModelBase.cs
  2. +9
    -1
      src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs
  3. +0
    -1
      src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/SettingsViewModel.cs
  4. +0
    -2
      src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/LoginView.xaml.cs
  5. +13
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml

+ 4
- 1
src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/Base/ViewModelBase.cs View File

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


+ 9
- 1
src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs View File

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

+ 0
- 1
src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/SettingsViewModel.cs View File

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

+ 0
- 2
src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/LoginView.xaml.cs View File

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


+ 13
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml View File

@ -13,6 +13,19 @@
iOS="eShop on Containers" iOS="eShop on Containers"
WinPhone="eShop on Containers"/> WinPhone="eShop on Containers"/>
</TabbedPage.Title> </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 --> <!-- CATALOG -->
<views:CatalogView <views:CatalogView
x:Name="HomeView"> x:Name="HomeView">


Loading…
Cancel
Save