Zhet Asked: 2020-10-13 11:15:14 +0800 CST 2020-10-13 11:15:14 +0800 CST 2020-10-13 11:15:14 +0800 CST 显示密码编辑文本 772 我对布局有疑问,我想生成一个活动,其中密码 EditText 出现在眼睛中,它揭示了所写的内容,如下所示: android 4 Answers Voted sioesi 2020-10-13T11:42:35+08:002020-10-13T11:42:35+08:00 有很多方法可以做到这一点,但从我在你的图像中看到的你想按下一个按钮并显示它们,这个功能就足够了,其中按钮是带有眼睛图标的按钮。并在您输入密码的地方编辑文本。 button.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { switch ( event.getAction() ) { case MotionEvent.ACTION_DOWN: editText.setInputType(InputType.TYPE_CLASS_TEXT); break; case MotionEvent.ACTION_UP: editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); break; } return true; } }); Codelaby 2020-10-13T12:50:03+08:002020-10-13T12:50:03+08:00 我发现了以下内容,看看它是否适合你: 使用新版本的支持库Android support library 24.2.0似乎可以通过这种方式完成: <android.support.design.widget.TextInputLayout android:id="@+id/text_password" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColorHint="@color/colorHint" app:passwordToggleEnabled = "true" app:passwordToggleTint="@color/colorHint" app:passwordToggleDrawable="@drawable/ic_android_white_18dp"> app:passwordToggleEnabled:启用或禁用按钮。 app:passwordToggleTint : 改变它的颜色 app:passwordToggleDrawable : 分配图标 官方TextInputLayout文档 从Android 密码可见性切换中提取 另一种方法是使用已针对 24.2.0 更新的PasswordEditText库,您可以为图标分配可见和不可见状态,即眼睛划掉。 Best Answer Fran 2020-10-13T23:05:50+08:002020-10-13T23:05:50+08:00 正如朋友Webserve所评论的那样,它已经可以通过使用 Android 支持库 24.2.0 的 TextInputLayout 以简单且原生的方式完成。在您的布局中: <android.support.design.widget.TextInputLayout android:id="@+id/login_password_container" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.TextInputEditText android:id="@+id/login_password_form" style="@style/LoginEditText" android:hint="@string/hint_password" android:imeActionLabel="@string/login_sign_in" android:imeOptions="actionDone" android:inputType="textPassword" /> </android.support.design.widget.TextInputLayout> 通过将inputType设置为textPassword,它将自动出现。 Rod G 2021-11-03T20:31:49+08:002021-11-03T20:31:49+08:00 <com.google.android.material.textfield.TextInputLayout android:id="@+id/tex## Título ##tInputLayout2" android:layout_width="400dp" android:layout_height="65dp" android:layout_marginStart="10dp" android:layout_marginEnd="10dp" android:theme="@style/CampoTexto1" app:passwordToggleTint="@color/colorPrimary" android:inputType="textPassword" app:passwordToggleEnabled="true"> <com.google.android.material.textfield.TextInputEditText android:id="@+id/etpass" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="15dp" android:drawableStart="@drawable/vector_pass" android:drawablePadding="12dp" android:hint="@string/etclave"/> </com.google.android.material.textfield.TextInputLayout>
有很多方法可以做到这一点,但从我在你的图像中看到的你想按下一个按钮并显示它们,这个功能就足够了,其中按钮是带有眼睛图标的按钮。并在您输入密码的地方编辑文本。
我发现了以下内容,看看它是否适合你:
使用新版本的支持库
Android support library 24.2.0
似乎可以通过这种方式完成:官方TextInputLayout文档
从Android 密码可见性切换中提取
另一种方法是使用已针对 24.2.0 更新的PasswordEditText库,您可以为图标分配可见和不可见状态,即眼睛划掉。
正如朋友Webserve所评论的那样,它已经可以通过使用 Android 支持库 24.2.0 的 TextInputLayout 以简单且原生的方式完成。在您的布局中:
通过将inputType设置为textPassword,它将自动出现。