实现点击按钮的事件时,记住一定要传入View v!!!
原因:源码View类,内部接口OnClickListener的方法,参数是View v.
public class View implements Drawable.Callback, KeyEvent.Callback,
AccessibilityEventSource {
/**
* Interface definition for a callback to be invoked when a view is clicked.
*/
public interface OnClickListener {
/**
* Called when a view has been clicked.
*
* @param v The view that was clicked.
*/
void onClick(View v);
}
}
/*方法一 匿名内部类*/
btn_1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = et_username.getText().toString();
String password = et_password.getText().toString();
Toast.makeText(MainActivity.this,"匿名内部类:"+username,Toast.LENGTH_SHORT).show();
Toast.makeText(MainActivity.this,"匿名内部类:"+password,Toast.LENGTH_SHORT).show();
}
});
/*方法二 1.声明事件*/
btn_2.setOnClickListener(this);
/*方法二 2.实现接口*/
@Override
public void onClick(View v) {
String username = et_username.getText().toString();
String password = et_password.getText().toString();
Toast.makeText(MainActivity.this,"实现接口:"+username,Toast.LENGTH_SHORT).show();
Toast.makeText(MainActivity.this,"实现接口:"+password,Toast.LENGTH_SHORT).show();
}
/*方法三 XML*/
public void xmlOnclick_btn_3(View v){
String username = et_username.getText().toString();
String password = et_password.getText().toString();
Toast.makeText(this,"XML:"+username,Toast.LENGTH_SHORT).show();
Toast.makeText(this,"XML:"+password,Toast.LENGTH_SHORT).show();
}