android基礎之點擊監聽器的2種監聽實現

點擊監聽器接口:onClickListener

抽象函數 onClick(View v)

有2個方法實現監聽:

1:當前類繼承點擊監聽器接口

package com.example.button;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity implements OnClickListener{

private Button btn_ok,btn_cancel;

private TextView tv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btn_ok=(Button)findViewById(R.id.btn_ok);

btn_cancel=(Button)findViewById(R.id.btn_cancel);

tv=(TextView)findViewById(R.id.tv);

btn_ok.setOnClickListener(this);

btn_cancel.setOnClickListener(this);

}

public void onClick(View v)

{

if(v==btn_ok)

{

tv.setText("確定按鈕觸發事件");

}else if(v==btn_cancel)

{

tv.setText("取消按鈕觸發事件");

}

}


@Override

public 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;

}


}

2:使用內部類實現點擊監聽器接口

package com.example.button;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;


public class MainActivity extends Activity{

private Button btn_ok,btn_cancel;

private TextView tv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btn_ok=(Button)findViewById(R.id.btn_ok);

btn_cancel=(Button)findViewById(R.id.btn_cancel);

tv=(TextView)findViewById(R.id.tv);

btn_ok.setOnClickListener(new OnClickListener()

{

public void onClick(View arg0)

{

tv.setText("確定觸發事件");

}

}

);


btn_cancel.setOnClickListener(new OnClickListener()

{

public void onClick(View arg0)

{

tv.setText("取消按鈕觸發事件");

}

}

);

}



@Override

public 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;

}


}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章