我想在errorEnabled
中将passwordToggleEnabled
和TextInputLayout
都设置为true,但似乎这两者不能共存,因为其中一个像{{{}}那样覆盖另一个3}}
我想这样做是因为我要验证密码字段以匹配特定条件,并且我希望用户能够同时看到错误消息和输入的密码。< / p>
这是我的代码:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:counterEnabled="true"
app:errorEnabled="true"
app:passwordToggleEnabled="true">
<android.support.design.widget.TextInputEditText
android:id="@+id/password_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/password"
android:inputType="textPassword" />
</android.support.design.widget.TextInputLayout>
是否可以将passwordToggle-icon移动到感叹号的左侧?或者我是否必须创建自定义drawable并使用它而不是passwordToggle-icon?
答案 0 :(得分:3)
尝试在setError()
TextInputLayout
TextInputEditText
内设置<android.support.design.widget.TextInputLayout
android:id="@+id/ti_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:counterEnabled="true"
app:errorEnabled="true"
app:passwordToggleEnabled="true">
<android.support.design.widget.TextInputEditText
android:id="@+id/password_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Password"
android:inputType="textPassword" />
XML
if(password_input.getText().toString().equals(""))
ti_input.setError("Enter Password");
else
ti_input.setError(null);
代码
UICollectionView
答案 1 :(得分:0)
这对我有用。不要在EditText上使用setError()
,请使用 TextInputLayout setError()