2016-11-28 3 views
0

Я получаю данные с сервера, и я должен локализовать его и поместить в ViewModel.Xamarin Forms localization и mvvm

Я сериализую данные из responce в формате json для объекта .NET.

Например, мне нужно локализовать логическую переменную «True» или «False» на английский или другой язык пользовательского интерфейса «Свободно» или «Занят».

Я использую файлы ресурсов (* .resx) для локализации.

Предложите мне лучший способ сделать это в приложении Xamarin.Forms с классическим MVVM.

ответ

1

Here - очень подробная документация о том, как добавить локализацию в проект с помощью resx.

В вашем случае, когда вы получаете True, я запрашиваю локализованный ключ для «Свободный».

Например, если у вас есть свойство Status вы локализовать это таким образом

public string Status 
     { 
      get 
      { 
       if (_isBusy) 
       { 
        return AppResources.Status_Busy; 
       } 
       else 
       { 
        return AppResources.Status_Free; 
       } 
      } 
      set 
      { 
       _status = value; 
       OnPropertyChanged(); 
      } 
     } 
+0

Спасибо. Я получаю файлы * .resx. Я знаю, как локализовать статические данные, но я не знаю, как это сделать с динамическими данными. – Atlantis

+0

Я бы поставил случаи коммутатора или операторы If. это то, что вы имели ввиду ? можете ли вы поместить некоторый код, если я не отвечаю правильно? – BraveHeart

+0

Я получаю данные с сервера, и я использую MVVM и bindingContext для XAML. Я хочу поместить локализованную строку из ViewModel в XAML. – Atlantis