如何在TextInputLayout中设置RTL?

Art*_*tem 3 android

我为我搜索解决方案,但没有为我找到一些东西.

这是我的风格,TextInputLayout:

<style name="MyWidget.TextInputLayout.StyleName" parent="TextAppearance.AppCompat">
    <item name="colorAccent">@color/yellow_my_mission_item_icon</item>
    <item name="android:textColorHint">@color/text_input_layout_hint_inactive</item>
    <item name="colorControlNormal">@color/black</item>
    <item name="colorControlActivated">@color/text_input_layout_active</item>
    <item name="colorControlHighlight">@color/green</item>
    <item name="android:gravity">start</item>
    <item name="android:layoutDirection">rtl</item>
    <item name="android:textAlignment">viewStart</item>
</style>
Run Code Online (Sandbox Code Playgroud)

并为EditText:

<style name="MyWidget.EditText.StyleName">
    <item name="android:textColor">@color/black</item>
    <item name="android:textSize">17sp</item>
    <item name="android:textAlignment">viewStart</item>
    <item name="android:gravity">start</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但在屏幕上看起来像: 在此输入图像描述

Vee*_*ner 7

根据Mavya Soni 分享的Google链接,如果您使用阿拉伯语文本修改strings.xml,它将在RTL中正确显示:

<string name="first_name">"????? ?????"</string>
<string name="last_name">"??? ???????"</string>
Run Code Online (Sandbox Code Playgroud)

  • 完美,英文单词不会显示在右侧,但阿拉伯语单词将显示在右侧。谢谢 :) (2认同)