您的位置:首页 > 移动开发 > Android开发

Android之EditText文本框监听事件

2012-03-18 14:55 405 查看
 
给EditText添加一个监听事件,当检测到里面的内容变化以后,根据需求,修改相关的内容就可以了。

1.TextWatcher

使用EditText的addTextChangedListener(TextWatcher watcher)方法对EditText实现监听,TextWatcher是一个接口类,所以必须实现TextWatcher里的抽象方法:





当EditText里面的内容有变化的时候,触发TextChangedListener事件,就会调用TextWatcher里面的抽象方法。

public class MainActivity
extends Activity {
private EditText text;
String str;
@Override
public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

text = (EditText)findViewById(R.id.text);

text.addTextChangedListener(textWatcher);

}

private TextWatcher textWatcher =
new TextWatcher() {

@Override
public void
afterTextChanged(Editable s) {
// TODO Auto-generated method stub

Log.d("TAG","afterTextChanged--------------->");

}

@Override
public void
beforeTextChanged(CharSequence s, int start,
int count,
int
after) {
// TODO Auto-generated method stub

Log.d("TAG","beforeTextChanged--------------->");

}
@Override

public void
onTextChanged(CharSequence s, int start,
int before,
int
count) {
Log.d("TAG","onTextChanged--------------->");

str = text.getText().toString();

try
{
//if ((heighText.getText().toString())!=null)

Integer.parseInt(str);

} catch
(Exception e) {
// TODO: handle exception

}

}
};
}
2.OnKeyListener
editText1.setOnKeyListener(new OnKeyListener(){

   public boolean onKey(View arg0, int arg1, KeyEvent arg2) {

    textView.setText(editText1.getText().toString());

    return false;

   }

   

  });
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息