標籤:android 對象 執行個體 switch 類
按鈕事件的五中寫法:
1、匿名內部類
2、類實現View.OnClickListener介面
3、建立執行個體化介面對象
4、使用內部類
5、自訂方法,配置Android:onclick屬性
import android.media.JetPlayer.OnJetEventListener;import android.os.Bundle;import android.app.Activity;import android.app.AlertDialog;import android.app.AlertDialog.Builder;import android.app.Dialog;import android.content.DialogInterface;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageButton;import android.widget.Toast;public class MainActivity extends Activity implements OnClickListener{Button button1,button2,button4,button5;ImageButton button3;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button1 = (Button)findViewById(R.id.button1);button1.setOnClickListener(new OnClickListener() {//第一種方式:匿名內部內實現的按鈕點擊事件@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "匿名內部內實現的按鈕點擊事件", Toast.LENGTH_SHORT).show();}});button2 = (Button)findViewById(R.id.button2);button2.setOnClickListener(this);//第三種:建立執行個體化介面對象button3 = (ImageButton)findViewById(R.id.button3);OnClickListener listener = new OnClickListener(){@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "建立執行個體化介面對象", Toast.LENGTH_SHORT).show();}};button3.setOnClickListener(listener);//第四種方式:使用內部類button4 = (Button)findViewById(R.id.button4);button4.setOnClickListener(new MyOnClickListener());}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}//第二種方式:實現View.onClickListener介面實現介面中的onClick()方法@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubswitch(arg0.getId()){case R.id.button2:Toast.makeText(this, "實現View.onClickListener介面實現介面中的onClick()方法",Toast.LENGTH_SHORT).show();break;}}class MyOnClickListener implements OnClickListener{@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "內部類的方式", Toast.LENGTH_SHORT).show();}}//第五種方式:自訂方法:配置android:onClick屬性public void onButton(View view){switch(view.getId()){case R.id.button5:Toast.makeText(this, "自訂方法,配置android:onClick屬性", Toast.LENGTH_SHORT).show();break;}}public void onButton7(View view){Toast.makeText(this, "aaaaaaaaaaaaaaaaaaaaa", Toast.LENGTH_SHORT).show();setContentView(R.layout.activity_main2);}}
Android按鈕事件的五中寫法總結