如何使用Text&创建EditText提示/占位符在android中的图像。我这样写的
<EditText
android:id="@+id/name"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:lines="1"
................................
...............................
android:drwableLeft="@drawable/image1"
android:hint="enter name here"/>
在这里我们可以看到图像&amp; edittext中的文本(提示),但即使用户在该字段中输入内容,图像仍然可见。我的要求是如果EditText中没有文字显示提示与图像,如果EditText不为空隐藏提示文字和图像
答案 0 :(得分:11)
您可以像在xml中一样设置drawableLeft
,并在EditText中添加addTextChangedListener
。当键入发生时,将警告此侦听器,并且如果textsize大于0,则可以检入侦听器。如果是,则只需将xml中指定的drawableLeft
设置为null
。
@Override
public void afterTextChanged(Editable s) {
if(s.toString().length() > 0) {
editText.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
} else {
//Assign your image again to the view, otherwise it will always be gone even if the text is 0 again.
editText.setCompoundDrawablesWithIntrinsicBounds(R.drawable.image, 0, 0, 0);
}
}
答案 1 :(得分:0)
我是通过将我的EditText放在FrameLayout中,然后在FrameLayout中包含一个TextView来实现的。 TextView用作提示文本。我在TextView上有一个drawableStart属性。当用户开始输入时,使用类似于Dion接受的答案中的代码隐藏TextView。