开始/结束&左/右用于Android 4.2中的RTL语言

时间:2015-01-08 13:17:21

标签: android android-layout arabic android-4.2-jelly-bean right-to-left

我试图制作我的应用程序的布局,其中包括对RTL语言的支持。目标的sdk版本将 15 + 。我在所有布局文件中都使用了开头/结尾以及作为左/右,但是我注意到布局在api level 17上没有使用RTL语言正常工作(Android 4.2)。 Api等级18及以上似乎处理双重定义(开始和左)虽然很好,所以我想知道为什么布局在17级混乱。根据下面的文字我会期望17级上的相同行为为18 +。

Native RTL support in Android 4.2:

  

如果您将应用定位到Android 4.2(该应用程序   targetSdkVersion或minSdkVersion是17或更高),那么你应该   使用“开始”和“结束”而不是“左”和“右”。例如,   android:paddingLeft应该成为android:paddingStart。

     

如果您希望自己的应用能够使用Android 4.2之前的版本(应用程序)   targetSdkVersion或minSdkVersion是16或更少),那么你应该添加   “开始”并结束“除了”左“和”右“。例如,你   同时使用android:paddingLeft和android:paddingStart。

1 个答案:

答案 0 :(得分:0)

为17+之类的layout-v17制作单独的布局,并在布局中放置默认布局。在layout-v17中,你需要在padding,margin,drwableleft等上只替换left-> start和right-> end。不要在17和plus上使用left和right。

没有别的办法。