編輯:關於Android編程
在android中一共有 多種事件,每種事件都有自己相對應的處理機制
如以下幾種
1
單擊事件
View.OnClickListener
public abstract void onClick (View v)
監聽方法
1
public void setOnClickListener(View.OnClickListener l)
普通
下面以Onclick單機事件為例 說明android中處理事件的三種方式
1.內部類處理事件
2.匿名內部類處理事件
3.數據源處理事件
例子如下:
XML文件
package com.example.actionoperator;
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 MainActivity extends Activity {
public Button button1, button2, button3;
// 獲取BubuttonOnClickListener對象
ButtonOnClickListener click =new ButtonOnClickListener();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
button1 = (Button) this.findViewById(R.id.button1);
button2 = (Button) this.findViewById(R.id.button2);
button3 = (Button) this.findViewById(R.id.button3);
// 使用內部類進行處理
button1.setOnClickListener(new MyListener());
// 使用匿名內部類進行處理
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "匿名內部類的方法實現方法監聽處理", 2).show();
}
});
// 使用數據源的方法進行處理,可以講所有的單機事件都注冊在這個click上進行處理
button3.setOnClickListener(click);
}
class ButtonOnClickListener implements OnClickListener {
public void onClick(View v){
// 讀者可以在這裡設置 switch case 語句對傳來參數的ID進行判斷 實現多個事件的同一方法處理
if (v==button3) {
Toast.makeText(MainActivity.this, "使用數據源實現方法監聽處理", 2).show();
}
}
}
class MyListener implements OnClickListener {
@Override
public void onClick(View view) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "內部類的方法實現方法監聽處理", 2).show();
}
}
}
最終效果



所有事件的處理方法都基本上是以上的三種處理機制,希望讀者都要認真掌握
下節預報:
Dialog對話框組件
Android中ProgressDialog的簡單示例
網上一般對進度條的示例都是如何顯示,沒有在任務結束如何關閉的文章,參考其他文章經過試驗之後把整套進度條顯示的簡單示例如下: 建立an
Android Studio 錯誤: 非法字符: '\ufeff' 及 Gradle不能自動查找xml自定義屬性
一、非法字符: '?'在將項目導入到Studio時提示 錯誤:非法字符: '?',編譯器沒報錯但編譯出錯,比較頭疼,後來發現原
Android中創建一個透明的進度對話框實例
首先我們看一下什麼叫做透明的進度對話框:接下來我們講一下如何創建:1、使用Eclipse創建一個新的Android 項目,使用Android
淺談Android app開發中Fragment的Transaction操作
在Android中,對Fragment的操作都是通過FragmentTransaction來執行。而從Fragment的結果來看,FragmentTransaction中