【问题标题】:Android EditText password, label gravitiy RTLAndroid EditText 密码,标签重力 RTL
【发布时间】:2016-08-19 09:19:35
【问题描述】:

我花了很多时间试图解决这个问题,但现在没有成功......

当应用程序在使用 RTL 语言的 android 上运行时。 EditText 的标签(提示)显示在错误的位置。

想要的结果 ltr layout

RTL 布局 rtl layou

XML

<?xml version="1.0" encoding="utf-8"?>

<android.support.percent.PercentRelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- Login form container -->
    <android.support.percent.PercentRelativeLayout
        android:id="@+id/form_container"
        android:layout_centerHorizontal="true"
        app:layout_widthPercent="85%"
        app:layout_heightPercent="30%"
        app:layout_marginTopPercent="8%">

        <!-- Username layout -->
        <android.support.design.widget.TextInputLayout
            android:id="@+id/input_layout_username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <EditText
                android:id="@+id/input_username"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:maxLines="1"
                android:inputType="textVisiblePassword|textNoSuggestions"
                android:textDirection="ltr"
                android:hint="@string/hint_username"/>

        </android.support.design.widget.TextInputLayout>

        <!-- Password layout -->
        <android.support.design.widget.TextInputLayout
            android:id="@+id/input_layout_password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:layout_below="@+id/input_layout_username">

            <EditText
                android:id="@+id/input_password"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:maxLines="1"
                android:textDirection="anyRtl"
                android:hint="@string/hint_password"
                android:inputType="textPassword" />

        </android.support.design.widget.TextInputLayout>

    </android.support.percent.PercentRelativeLayout>

</android.support.percent.PercentRelativeLayout>

如何修复 RTL 布局中不必要的边距? 此外,如果可以移除/隐藏“可见性切换”(眼睛图标)按钮,那就太好了!

谢谢!

【问题讨论】:

  • 请发布您的xml代码
  • 我忘了附上 xml 代码,抱歉...谢谢!

标签: android android-edittext right-to-left


【解决方案1】:

要禁用密码切换,您只需在 TextInputLayout 中添加“passwordToggleEnabled”属性,例如:

<android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        app:passwordToggleEnabled="false">

    <EditText
        android:id="@+id/input_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:maxLines="1"
        android:textDirection="ltr"
        android:hint="@string/hint_password"
        android:inputType="textPassword" />

</android.support.design.widget.TextInputLayout>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-17
    • 1970-01-01
    • 1970-01-01
    • 2011-07-20
    • 2021-09-12
    • 1970-01-01
    相关资源
    最近更新 更多