Xamarin Forms Глобализация
Я просмотрел эту статью о глобализации в формах Xamarin. В статье указано, что мне нужно создать интерфейс для доступа к языку на каждой платформе. Тем не менее, в моем последнем приложении я смог просто вставить эту строку кода в общий код, и, похоже, он отлично работает для получения языка:
ls_Language = CultureInfo.CurrentUICulture.TwoLetterISOLanguageName;
Есть ли причина, по которой строка кода, подобная этой, не будет работать для глобализации с использованием файла ресурсов в формах Xamarin?
1 ответ
Да, ваш код предназначен для установки культуры ресурсов при первой загрузке приложения, это то же самое, что использование DependencyService в классе приложения Xamarin.Forms для вызова интерфейса и установки правильного значения для нашей культуры ресурсов RESX.
При желании вы можете обновить это значение в соответствии с событиями, относящимися к конкретной платформе, которые могут возникать в iOS или Android, если пользователь обновляет свои языковые настройки во время работы приложения. Так что вам нужно использовать интерфейс ILocalize.