Используя Xamarin Forms 3 FlowDirection, мы можем представить представление Master-Details справа налево - PullRequest
0 голосов
/ 08 мая 2018

Я занимаюсь разработкой приложения Xamarin Forms для Android и iOS. Можно ли использовать новое свойство FlowDirection, представленное в Xamarin.Forms 3.0, для отображения основных сведений справа налево, включая меню, представленное слева, а не справа в языках RTL? Я попытался установить свойство страницы MasterDetail, но меню в Android по-прежнему отображается слева, а строка меню по-прежнему слева направо. Есть идеи? Новая ссылка на недвижимость https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/FlowDirection.cs

1 Ответ

0 голосов
/ 08 мая 2018

Похоже, что все готово, как и ожидалось, на iOS, но не на Android (требуются дополнительные действия) со следующим примером:

<?xml version="1.0" encoding="UTF-8"?>
<MasterDetailPage
    xmlns="http://xamarin.com/schemas/2014/forms"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    x:Class="RTL.MasterDetailPage"
    Padding="25"
    FlowDirection="RightToLeft">

    <MasterDetailPage.Master>
        <ContentPage Title=" ">
            <StackLayout>
                <Button Text="Menu item" />
            </StackLayout>
        </ContentPage>
    </MasterDetailPage.Master>
    <MasterDetailPage.Detail>
        <ContentPage>
            <Label Text="My page"/>
        </ContentPage>
    </MasterDetailPage.Detail>
</MasterDetailPage>

Вот результат:
imageimage

As you see on Android the menu appear on the left and on iOS on the right. Should check if there an existing bug report, if not should create a new one to the Xamarin.Forms team.

Update:
According to this document мы должны добавить android:supportsRtl="true" к узлу приложения в манифесте и убедиться, что minSdk установлен на 17+, без него не будет работать.

Итак, вот последний результат:

image

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