我想要显示一些帮助文本(就像在一个网页中聚焦一个字段时,显示关于该字段输入内容的非模态弹出窗口)。
我使用了EditText的android:hint
属性,但如果文本很长则剪切文本。有没有内置或快速的方法吗?
答案 0 :(得分:6)
在EditText下面添加一个包含提示的TextView。默认情况下,将其设置为不可见。
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="your hint message..."
/>
现在添加一个onFocusChangeListener以使TextView可见/不可见:
editText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus){
tvHint.setVisibility(View.VISIBLE);
}else{
tvHint.setVisibility(View.INVISIBLE);
}
}
});
答案 1 :(得分:0)
在TextView
下方EditText
。实现edittext的onFocusListener
,当编辑文本具有焦点时,将textView可见性设置为View.VISIBLE,这将显示帮助文本。当编辑文本失去焦点时,文本视图将不可见。
答案 2 :(得分:0)
您可以使用Custom Toast按摩或PopupWindow用于非模态弹出窗口,例如网页,看看这些内容有助于您创建自定义Toast和popupwindow
http://www.mobilemancer.com/2011/01/08/popup-window-in-android/
并使用OnFocusChangeListener
侦听器在用户点击EditView或发起焦点时进行跟踪
txtEdit.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus)
//show Toast massages or PopupWindow here
}
});