Как изменить язык устройства в формах xamarin - PullRequest
0 голосов
/ 23 января 2019

Я работаю над RTL в формах xamarin. Мне нужно показать направление потока справа налево при нажатии кнопки. Я работал с утра. Я не получил решение. Я получил только изменения языка, значит, если я хочу арабский язык, я могу сделать это с помощью многоязычного плагина. Но мне нужно изменить направление потока. Как это сделать?

Ответы [ 2 ]

0 голосов
/ 23 января 2019

В файле манифеста Android включите RTL, как показано ниже

<application android:label="MyApp" android:supportsRtl="true">
    <!--others-->
</application>

Обратите внимание, что RTL доступен в Android из API 17 +

В проекте iOS включите арабскую культуру, добавив ее вCFBundleLocalizations в файле info.plist-

<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleLocalizations</key>
<array>
    <string>en</string>
    <string>ar</string>
</array>

В проекте Forms установите направление потока (по умолчанию ориентировано вправо) на ContentPage, Labels и т. д.

FlowDirection="{x:Static Device.FlowDirection}"

Настройка арабского языкаКультура автоматически изменит направление потока страницы на RightToLeft, если указано, как указано выше.

0 голосов
/ 23 января 2019

Вам просто нужно установить FlowDirection в вашей странице / визуальных элементах.

<ContentPage ... FlowDirection="{x:Static Device.FlowDirection}"> />

Или, если вы не хотите устанавливать на основе языка устройства, вы можете просто установить один изэти доступные опции

public enum FlowDirection
    {
        MatchParent = 0,
        LeftToRight = 1,
        RightToLeft = 2,
    }

Вы можете прочитать больше в Официальной документации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...