我一直在努力让ListView作为RTL(从右到左)工作。 我在ListView和LinearLayout属性中添加了以下行:
android:layoutDirection="rtl"
它仍然从左到右显示列表。
有什么想法吗?
答案 0 :(得分:5)
谢谢大家,但我解决了它:
android:textDirection="rtl"
我已将它添加到ListView和布局中,并且它有效。下次你应该尝试考虑将它用于RTL布局。
答案 1 :(得分:3)
要利用RTL布局镜像,只需对您的应用进行以下更改:
在您的应用清单中声明您的应用支持RTL镜像。
具体而言,将android:supportsRtl="true"
添加到清单文件中的<application>
元素。
将所有应用的left/right
布局属性更改为新的start/end
等效内容。
如果您将应用定位到Android 4.2 (该应用的
targetSdkVersion
或minSdkVersion
是17或更高),那么你应该
使用start
和end
代替left
和right
。例如,
android:paddingLeft
应该成为android:paddingStart
。
如果您希望自己的应用使用早于Android 4.2的版本
(应用的targetSdkVersion
或minSdkVersion
是16或更少),然后是你
除了start
和end
之外,还应添加left
和right
。对于
例如,您同时使用android:paddingLeft
和android:paddingStart
。
答案 2 :(得分:1)
Android 4.2(API level 17) or above only
支持 RTL 布局支持功能。请在您的父版面中添加android:layout_gravity="left/right"
。并且还允许 android:textAlignment 。
设置 minSdkVersion=17
请阅读http://developer.android.com/reference/android/view/View.html#attr_android:layoutDirection
答案 3 :(得分:0)
这将根据设备的语言环境自动调整
android:textDirection="locale"