`
苹果超人
  • 浏览: 198387 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

EditText输入内容即时捕捉----OnKeyListner事件

阅读更多
  要想即时捕捉EditText中输入的内容,只要给EditText注册一个OnKeyListener(单击键盘事件处理)监听就可以了,在该监听事件里可以进行文字过滤。大部分widget都有setOnKeyListener方法没什么难点,只是在前面例子上稍作修改
 
package com.kevin.checkbox;

import android.app.Activity;
import android.os.Bundle;
import android.text.method.HideReturnsTransformationMethod;
import android.text.method.KeyListener;
import android.text.method.PasswordTransformationMethod;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnKeyListener;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.TextView;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;

public class Main extends Activity {
	private CheckBox chk_show;
	private EditText et_password;
	private TextView tv_result;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        et_password = (EditText) findViewById(R.id.et_password);
        chk_show = (CheckBox) findViewById(R.id.chk_show);
        tv_result = (TextView) findViewById(R.id.tv_password);
        chk_show.setOnCheckedChangeListener(new CheckChangedListener());
        et_password.setOnKeyListener(new PasswordOnKeyListener());
    }
    // Checkbox的选择监听事件
    class CheckChangedListener implements OnCheckedChangeListener{

		@Override
		public void onCheckedChanged(CompoundButton buttonView,
				boolean isChecked) {
			if(isChecked){
				// 设置EditText的内容为显示
				et_password.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
			}else{
				// 设置EditText的内容为隐藏
				et_password.setTransformationMethod(PasswordTransformationMethod.getInstance());
			}
		}    	
    }
    // EditText的键盘输入事件
    class PasswordOnKeyListener implements OnKeyListener{
		@Override
		public boolean onKey(View v, int keyCode, KeyEvent event) {
			EditText password = (EditText) v;
			// 在textview显示键盘输入值
			tv_result.setText(getString(R.string.result) + password.getText().toString());
			return false;
		}
    	
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics