Button的四种实现方式

/**
* Button的四种写法
*/

//第一种先获取button,然后给button添加监听事件,创建实现OnClickListener接口的类,
//在接口类里实现button的响应事件。
Button callBtn = (Button) this.findViewById(R.id.callBtn);
callBtn.setOnClickListener(new MyListener());

//创建实现接口的类
public class MyListener implements OnClickListener {

  @Override
  public void onClick(View v) {
  /**
  * 方法实现
  */
  }
}

 

//第二种直接在添加监听的时候创建接口的实例
Button callBtn = (Button) this.findViewById(R.id.callBtn);
callBtn.setOnClickListener(new OnClickListener() {

  @Override
  public void onClick(View v) {
  /**
  * 具体实现
  */
  }
});

//第三种让MainActivity实现接口OnClickListener

public class MainActivity extends Activity implements OnClickListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button callBtn = (Button) this.findViewById(R.id.callBtn);
callBtn.setOnClickListener(this);
}

  @Override
  public void onClick(View v) {
  

  /**
  * 当有很多button的时候让当前的MainActivity继承onClickListener接口,  
  在要实现的方法里用switch case 语句判断从而实现
  *
  */
  switch (v.getId()) {
  case R.id.callBtn:
  break;
  default:
  break;
  }
}

}

}

//第四种在activity_main.xml中<Button />里添加android:onClick="callPhone"
//然后在MainActivity.java里实现
//其实是通过反射实现的

public class MainActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
}
  public void callBtnClicked(View v) {
  /**
  * 具体实现
  */
  }

}

 

posted @ 2015-04-28 09:54  Colaless  阅读(1141)  评论(0编辑  收藏  举报