我在表单中使用切换密码,这是我的代码:

<android.support.design.widget.TextInputLayout
       android:id="@+id/input_layout_pass"
       android:layout_width="match_parent"
       android:layout_height="37dp"
       android:layout_marginTop="10dp"
       app:hintEnabled="false"
       app:passwordToggleEnabled="true">

       <android.support.design.widget.TextInputEditText
            android:id="@+id/password"
            style="@style/edittexts"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/hint_pass"
            android:inputType="textPassword"
            app:passwordToggleEnabled="true" />
</android.support.design.widget.TextInputLayout>


它工作正常,并在我的EditText中显示切换按钮视图。

我只想将图标移到编辑文本的左侧,该怎么做?

最佳答案

您需要更改编辑文本的方向,但是它将改变您编辑文本的方向,并开始从右向左书写。

<android.support.design.widget.TextInputLayout
   android:id="@+id/input_layout_pass"
   android:layout_width="match_parent"
   android:layout_height="37dp"
   android:layout_marginTop="10dp"
   android:layoutDirection="rtl"
   app:hintEnabled="false"
   app:passwordToggleEnabled="true">

   <android.support.design.widget.TextInputEditText
        android:id="@+id/password"
        style="@style/edittexts"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint_pass"
        android:inputType="textPassword"
        app:passwordToggleEnabled="true" />
</android.support.design.widget.TextInputLayout>


另外,如果您使用的API版本低于17,则需要在代码中添加此属性

TextInputLayout input_layout_pass = (TextInputLayout) findViewById(R.id.input_layout_pass);
ViewCompat.setLayoutDirection(input_layout_pass, ViewCompat.LAYOUT_DIRECTION_RTL);

10-08 02:57