常见事件监听器
1.单击事件:当用户触碰某一个组件或者方向键被按下时产生的事件
view.OnClickListener (), 处理方法为 onClick()
loginButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), loginButton.getText(), Toast.LENGTH_LONG);
}
});
cancelButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), cancelButton.getText(), Toast.LENGTH_LONG);
}
});
2. 焦点事件:组件得到或者失去焦点时产生该事件
view.OnFocusChangeListener, 处理方法为onFocusChange()
usernameEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), passwordEditText.getText(), Toast.LENGTH_LONG);
}
});
passwordEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), passwordEditText.getText(), Toast.LENGTH_LONG);
}
});
3.按键事件:用户按下或者释放设备上的某个按键时产生,
view.OnKeyListener, 处理方法为onKey()
usernameEditText.setOnKeyListener(new OnKeyListener() {
//按键方法
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
usernameEditText.setText("");
return false;
}
});
passwordEditText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
passwordEditText.setText("");
return false;
}
});
4.触碰事件:设备具有触摸屏功能时,触摸屏幕产生该事件
view.OnToughListener, 处理方法为onTough()
5.创建上下文菜单事件: 创建上下文菜单时产生该事件
view.OnCreateContextMenuListener, 处理方法为onCreateContextMenu()
6.选中事件:当用户选择一个选项时,触发该事件
view.OnCheckChangeListener,处理方法为onCheckChange()
autoCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), autoCheckBox.isChecked()+"", Toast.LENGTH_LONG);
}
});