首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法添加drawableStart/drawableLeft使用passwordToggleEnabled离开

问题描述:

无法添加drawableStart/drawableLeft使用passwordToggleEnabled离开

回答:

在Android开发中,drawableStart或drawableLeft属性用于在EditText控件的文本框中添加一个可绘制的图标,而passwordToggleEnabled属性用于在密码输入框中添加一个切换密码可见性的图标。然而,有时候在使用passwordToggleEnabled属性时,无法同时添加drawableStart或drawableLeft属性,导致图标无法显示。

这个问题可能是由于TextInputLayout控件的特性所致。TextInputLayout是一个用于包装EditText的布局容器,它提供了一些额外的功能,如浮动标签和密码可见性切换。然而,由于TextInputLayout的实现方式,导致无法直接在EditText上添加drawableStart或drawableLeft属性。

解决这个问题的方法是使用TextInputEditText控件替代EditText,并将其放置在TextInputLayout中。TextInputEditText是TextInputLayout的一个子类,它继承了EditText的所有功能,并且可以正常显示drawableStart或drawableLeft属性。

以下是一个示例代码:

代码语言:xml
复制
<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <com.google.android.material.textfield.TextInputEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:drawableStart="@drawable/ic_icon"
        android:drawableLeft="@drawable/ic_icon"
        android:inputType="textPassword"
        android:passwordToggleEnabled="true" />

</com.google.android.material.textfield.TextInputLayout>

在上述示例中,我们使用了TextInputLayout包装了一个TextInputEditText,并在TextInputEditText上同时设置了drawableStart和passwordToggleEnabled属性。这样就可以同时显示图标和密码可见性切换按钮。

推荐的腾讯云相关产品:腾讯云移动推送(https://cloud.tencent.com/product/umeng_push)、腾讯云移动分析(https://cloud.tencent.com/product/ma)、腾讯云移动测试(https://cloud.tencent.com/product/mtc)。

希望以上信息对您有所帮助!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Android开发笔记(三十七)按钮类控件

    Button是文本按钮(继承自TextView),而ImageButton是图像按钮(继承自ImageView)。两者之间的区别在于: 1、Button即可显示文本也可显示图形(通过设置背景图),而ImageButton只能显示图形不能显示文本; 2、Button可在文本周围区域显示小图,而ImageButton无法在某个区域显示小图; 3、ImageButton上的图像可按比例进行拉伸,而Button上的大图会拉伸变形(因为背景图无法按比例拉伸); 从上面可以看出,Button的适应面更广,所以实际开发中基本使用Button。 Button与ImageButton的单击方法是setOnClickListener,对应的监听器要实现接口View.OnClickListener。长按方法是setOnLongClickListener,对应的监听器要实现接口View.OnLongClickListener。下面是Button按键监听器的代码例子:

    03
    领券