如何更改xamarin表单中的设备语言

问题描述 投票:0回答:2

我正在以xamarin形式研究RTL。我需要点击一个按钮显示从右到左的流向。我从早上开始工作。我没有得到解决方案。我只有语言更改意味着如果我想要阿拉伯语,我可以使用多语言插件。但我需要改变流向。怎么做?

c# xaml xamarin.forms xamarin.android
2个回答
0
投票

您只需在页面/视觉元素中设置FlowDirection即可。

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

或者,如果您不想根据设备语言进行设置,则只需设置其中一个可用选项即可

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

您可以在Official Documentation中阅读更多内容


0
投票

在Android Manifest文件中,启用RTL,如下所示

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

请注意,RTL在API 17+的android中可用

在iOS项目中,通过将其添加到info.plist文件中的CFBundleLocalizations来启用阿拉伯文化 -

<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}"

设置阿拉伯文化会自动将页面的Flow方向更改为RightToLeft(如果指定如上)。

© www.soinside.com 2019 - 2024. All rights reserved.