在MainActivity中为Button控件的点击事件注册一个监听器,方法如下所示: 方法一:
public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button =(Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
}
});
}
}
方法二:
public class MainActivity extends AppCompatActivity implements View.OnClicListener{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(this);
}
@Override
public void onClick(View v){
switch (v.getId()){
case R.id.button:
break;
default:
break;
}
}
}
方法三: 将方法一中的相关代码简写成:
findViewById(R.id.button).setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
}
});
或将方法二中的相关代码简写成:
findViewById(R.id.button).setOnClickListener(this);
方法三涉及的相关知识点: 查看findViewById方法:
@SuppressWarnings("TypeParameterUnusedInFormals")
@Override
public <T extends View> T findViewById(@IdRes int id) {
return getDelegate().findViewById(id);
}
查看OnClickListener接口:
public interface OnClickListener {
void onClick(View v);
}
|