Android:ConstraintLayout支持RTL

tne*_*han 6 android android-constraintlayout

我经历了很多解决方案,但我不明白如何ConstraintLayout在Android中为RTL使用设计支持.

Muk*_*esh 16

只需更换从约束LeftStart&RightEnd,

app:layout_constraintLeft_toRightOf = layout_constraintStart_toEndOf
app:layout_constraintRight_toLeftOf = layout_constraintEnd_toStartOf
app:layout_constraintLeft_toLeftOf = layout_constraintStart_toStartOf
app:layout_constraintRight_toRightOf = layout_constraintEnd_toEndOf
Run Code Online (Sandbox Code Playgroud)

我相信它会对你有用,

看我的范例 item_list.xml

LTR截图

英语

RTL截图

RTL

注意:我希望您已添加此行android:supportsRtl="true",并且AndroidManifest.xml您需要删除textAlignment属性.对齐肯定会使用阿拉伯语文本.

更新:

添加/放置这两个属性以避免api级别版本支持是更好的做法,

layout_constraintLeft_toRightOf
layout_constraintStart_toEndOf

layout_constraintRight_toLeftOf
layout_constraintEnd_toStartOf

layout_constraintLeft_toLeftOf
layout_constraintStart_toStartOf

layout_constraintRight_toRightOf
layout_constraintEnd_toEndOf
Run Code Online (Sandbox Code Playgroud)

  • 约束开始/结束会在 api 16 中工作吗?为什么不同时添加左/右和开始/结束以支持新旧版本? (2认同)