我已经设置了一个提示EditText
,目前提示可见性已经消失.当用户开始输入时,我想删除提示文本,当光标在可见的时候EditText
,而不是在用户开始输入时.我怎样才能做到这一点?
<EditText
android:paddingLeft="10dp"
android:background="@drawable/edittextbg"
android:layout_marginLeft="4dp"
android:layout_marginTop="7dp"
android:gravity="left"
android:id="@+id/Photo_Comments"
android:layout_width="150dip"
android:maxLines="1"
android:hint="Write Caption"
android:maxLength="50"
android:singleLine="true"
android:maxWidth="100dip"
android:layout_height="wrap_content"/>
Run Code Online (Sandbox Code Playgroud)
Sun*_*pta 55
您可以使用选择器的概念.onFocus删除提示.
android:hint="Email"
Run Code Online (Sandbox Code Playgroud)
因此,当TextView
有焦点或有用户输入(即非空)时,提示将不会显示.
Ama*_*lam 30
我不知道这样做的直接方式是否可用,但你肯定通过代码有一个解决方法:监听onFocus事件EditText
,并且一旦获得焦点,将提示设置为什么,如editText.setHint("")
:
这可能不是你必须要做的,但它可能是这样的 -
myEditText.setOnFocusListener(new OnFocusListener(){
public void onFocus(){
myEditText.setHint("");
}
});
Run Code Online (Sandbox Code Playgroud)
agl*_*our 20
要完成Sunit的答案,您可以使用选择器,而不是文本字符串,而是textColorHint.您必须在editText上添加此属性:
android:textColorHint="@color/text_hint_selector"
Run Code Online (Sandbox Code Playgroud)
你的text_hint_selector应该是:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:color="@android:color/transparent" />
<item android:color="@color/hint_color" />
</selector>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
121327 次 |
最近记录: |