Android編程之監(jiān)聽器的實現(xiàn)方法
本文實例講述了Android編程之監(jiān)聽器的實現(xiàn)方法。分享給大家供大家參考,具體如下:
1、通過內(nèi)部類實現(xiàn)監(jiān)聽器,將事件監(jiān)聽器定義成當前的內(nèi)部類,使用內(nèi)部類可以在當前類中復(fù)用監(jiān)聽器。
第一步: 寫監(jiān)聽器類,覆蓋對應(yīng)的抽象方法
第二步:創(chuàng)建監(jiān)聽器對象
第三步:注冊
以一個button為例,代碼如下:
package cn.csdn.android.tesxt;
import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class TestListenerActivity extends Activity {
Button btn;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViews();
MyOnClickListener listener = new MyOnClickListener();
btn.setOnClickListener(listener);
}
private void findViews() {
btn = (Button) this.findViewById(R.id.button1);
}
class MyOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
Toast.makeText(TestListenerActivity.this, "xxx", Toast.LENGTH_SHORT)
.show();
}
}
}
2、匿名內(nèi)部類是最廣泛的事件監(jiān)聽形式,因為大部分事件監(jiān)聽器只是臨時使用一次,所以使用匿名類更加合適,代碼如下:
package cn.csdn.android.tesxt;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class TestListenerActivity extends Activity implements OnClickListener {
Button btn;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViews();
btn.setOnClickListener(this);
}
private void findViews() {
btn = (Button) this.findViewById(R.id.button1);
}
@Override
public void onClick(View v) {
Toast.makeText(TestListenerActivity.this, "xxx", Toast.LENGTH_SHORT)
.show();
}
}
3、Activity本身作為監(jiān)聽器,可以直接在Activity中定義事件處理器方法,形式雖然很簡潔,但是容易造成程序混亂
希望本文所述對大家Android程序設(shè)計有所幫助。
相關(guān)文章
Android 保存Fragment 切換狀態(tài)實例代碼
本文主要介紹Android Fragment的應(yīng)用,這里給大家用實例代碼詳細介紹了Android Fragment 切換狀態(tài),有需要的小伙伴可以參考下2016-07-07
關(guān)于Android bitmap你不知道的一些事
這篇文章主要為大家詳細介紹了關(guān)于Android bitmap你不知道的一些事,使用bitmap需要注意的一些細節(jié),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11
Android實現(xiàn)授權(quán)訪問網(wǎng)頁的方法
這篇文章主要介紹了Android實現(xiàn)授權(quán)訪問網(wǎng)頁的方法,需要的朋友可以參考下2014-07-07
AndroidQ分區(qū)存儲權(quán)限變更及適配的實現(xiàn)
這篇文章主要介紹了AndroidQ分區(qū)存儲權(quán)限變更及適配的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
Android矢量圖之VectorDrawable類自由填充色彩
這篇文章主要介紹了Android矢量圖之VectorDrawable類自由填充色彩的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-05-05
Android?autojs隨時翻譯剪貼板單詞實現(xiàn)示例
這篇文章主要為大家介紹了Android?autojs隨時翻譯剪貼板單詞,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09

