EditText 获得焦点时hint消失,失去焦点时hint显示
来源:互联网 发布:js动态增加删除行 编辑:程序博客网 时间:2024/05/16 14:31
android 默认状态时输入文字后hint消失,在此实现的是点击EditText时,也就是获得焦点的时候hint就会消失。
以下为代码
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <EditText android:id="@+id/editText1" android:layout_width="50dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:hint="@string/app_name" android:inputType="number" > <requestFocus /> </EditText> <EditText android:id="@+id/editText2" android:layout_width="50dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:hint="@string/app_name" android:inputType="number" /> <EditText android:id="@+id/editText3" android:layout_width="50dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:hint="@string/app_name" android:inputType="number" /> <EditText android:id="@+id/editText4" android:layout_width="50dp" android:layout_height="wrap_content" android:layout_weight="1" android:ems="10" android:hint="@string/app_name" android:inputType="number" /> </LinearLayout>
以下为MainActivity.java
package com.chuanchuan.edittextdemo;import android.os.Bundle;import android.text.Editable;import android.text.TextWatcher;import android.view.View;import android.view.View.OnFocusChangeListener;import android.widget.EditText;import android.widget.TextView;import android.app.Activity;public class MainActivity extends Activity {private EditText et1;private EditText et2;private EditText et3;private EditText et4;String strHint;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);et1=(EditText) findViewById(R.id.editText1);et2=(EditText) findViewById(R.id.editText2);et3=(EditText) findViewById(R.id.editText3);et4=(EditText) findViewById(R.id.editText4);strHint=getResources().getString(R.string.app_name);final EditText[] mArray = new EditText[] { et1,et2, et3, et4 };for (int i = 0; i < mArray.length; i++) {final int j = i;//EditText 获得焦点时hint消失,失去焦点时hint显示mArray[j].setOnFocusChangeListener(new OnFocusChangeListener() {@Overridepublic void onFocusChange(View v, boolean hasFocus) { if (!hasFocus) { ((TextView) v).setHint(strHint); } else { ((TextView) v).setHint(""); }}});mArray[j].addTextChangedListener(new TextWatcher() {private CharSequence temp;private int sStart;private int sEnd;@Overridepublic void onTextChanged(CharSequence s, int start,int before, int count) {temp = s;}@Overridepublic void beforeTextChanged(CharSequence s, int start,int count, int after) {}@Overridepublic void afterTextChanged(Editable s) {sStart = mArray[j].getSelectionStart();sEnd = mArray[j].getSelectionEnd();//前三个EditText输入满位(此处设置 为3)后,光标自动移到下一个TextViewif (temp.length() == 3 && (j == 0 || j == 1 || j == 2)) {mArray[j + 1].setFocusable(true);mArray[j + 1].setFocusableInTouchMode(true);mArray[j + 1].requestFocus();}//输入超出三位时,删除多出的一位if (temp.length() > 3) {s.delete(sStart - 1, sEnd);int tSelection = sStart;mArray[j].setText(s);mArray[j].setSelection(tSelection);}}});}}}
- EditText 获得焦点时hint消失,失去焦点时hint显示
- 自定义EditText获取焦点时hint隐藏,失去焦点时hint值显示
- Android:实现EditText在获得焦点后消去hint,失去焦点后再显示原来的hint
- 【Android】EditText获得焦点以及失去焦点
- jquery 获得焦点的时候,焦点时文本框清空,失去焦点时又显示默认文字
- android开发中EditText自动获取焦点时隐藏hint的代码
- Android EditText在开始显示时失去焦点
- Android EditText设置默认不弹出软键盘,点击EditText外部隐藏软键盘,EditText获取焦点时隐藏hint
- input 输入框获得/失去焦点时隐藏/显示文字
- input 输入框获得/失去焦点时隐藏/显示文字
- TextInput失去焦点时, 键盘不消失
- EditText中hint消失
- 获得焦点失去焦点
- JQ 搜索框获得焦点,和是失去焦点,默认提示显示与消失
- EditText失去焦点时收起软键盘
- Android EditText聚焦时hint消失的简单代码
- Android EditText聚焦时hint消失的简单代码
- Android EditText聚焦时hint消失的简单代码
- linux进程地址空间(2) 缺页异常详解(1)原理和内核缺页异常处理
- javascript中=== 、==、!==与!=的区别
- 面试题38:数字在排序数组中出现的次数
- linux系统内存实际使用率
- C++Primer习题10.9
- EditText 获得焦点时hint消失,失去焦点时hint显示
- 引用作为函数返回值
- svn:无法使用外部编辑器获得日志信息;考虑设置环境变量$SVN_EDITOR
- Hi3531添加16GByte(128Gbit) NAND Flash支持
- 堆栈大小设置问题
- redis数据库之主从复制
- 对异常 java.lang.IllegalStateException: getAttribute: Session already invalidated的理解 .
- Linux下SVN命令使用大全
- Android:Activity和ProgressBar共存时停止顺序问题