android的语言特定布局

我知道我们可以显示多种语言支持我们的android应用程序,具有不同值的文件夹示例values-en,values-ar。

我的问题是,当语言发生变化时,我们可以改变我们的布局风格。

就像英语一样,每一件事情都是从“左到右”开始的,但阿拉伯语恰恰相反。 所以当select的语言是英语时,可以在左侧放置图像,并且在语言改变为阿拉伯语时改变布局

Solutions Collecting From Web of "android的语言特定布局"

您的应用程序的布局方向。 ldrtl意思是"layout-direction-right-to-left"ldltr表示"layout-direction-left-to-right" ,是默认的隐式值。

这可以应用于任何资源,如layouts, drawablesvalues

例如,如果您想为Arabic language提供一些特定的布局,并为其他“从右到左”的语言(如波斯语或希伯来语)提供一些通用布局,那么您将拥有:

 res/ layout/ main.xml (Default layout) layout-ar/ main.xml (Specific layout for Arabic) layout-ldrtl/ main.xml (Any "right-to-left" language, except for Arabic, because the "ar" language qualifier has a higher precedence.) 

注意:要为您的应用启用right-to-left布局function,您必须将supportsRtl设置为"true"并将set targetSdkVersion to 17 or higher.

当语言发生变化时,我们可以改变我们的布局风格。

是。 您可以根据用户select的语言提供不同的布局。 这在提供资源文档中有明确的描述。

事实上,提供了一个特定的布局限定符,用于支持名为res/layout-ldrtl向左的语言。

PS:该属性仅支持API 17。