1. 程式人生 > >Android按鈕的五種點選監聽事件處理

Android按鈕的五種點選監聽事件處理

1、匿名內部類作為監聽器

button.setOnClickListener(new OnClickListener() {


@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}

});

2、內部類作為監聽器(可以使用)

button.setOnClickListener(new MyListener());

class MyListener implements OnClickListener{


@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case value:

break;


}
}

}

3、Activity本身繼承OnClickListener介面作為監聽器使用(可以使用)

public class MainActivity extends Activity implements OnClickListener{

void methodA(){

button.setOnClickListener(this);

}

//繼承介面監聽處理方法

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.bt_call:
Toast.makeText(mContext, "撥打中", Toast.LENGTH_LONG).show();
callPhone(et_num.getText().toString().trim());
break;

}
}

}

4、外部類作為監聽器

MainActivity.java

button.setOnClickListener(new MyListener());

MyListener.java

public class MyListener implements OnClickListener{


@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}
}

5、直接在控制元件中設定onclick屬性    ctri+shift+g檢測不到被引用,很可能被刪掉,不建議使用

<Button 
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/bt_call"
   android:onClick="onClickButton"
   android:text="@string/bt_call"/>

MainActivity.java

public void onClickButton(View v){

}


相關推薦

Android按鈕事件處理

1、匿名內部類作為監聽器 button.setOnClickListener(new OnClickListener() { @Overridepublic void onClick(View v) {// TODO Auto-generated method stub}}

android開發擴大CheckBox範圍

android開發過程中,image很小的時候,點選範圍很小,很難點選到,使用者體驗差,在xml檔案新增android:text=” “,就是空格。 android:drawableRight="@drawable/...." android:text=

網易洞見丨洞見APP——Unity列印資訊、事件、退出應用

洞見APP——Unity列印資訊 log("lua call 6666") Insight.Debug.Log("Start end") 點選監聽事件、退出應用 require "Commo

layer 在標題中加事件

本文來源於網路,自己拼湊。謝謝博主們的熱情分享。 在layer的標題裡面設定一個id="conform" 給這個id一個點選的監聽事件 $(document).on('click','#conform',function(){ test(); }); 另外還需要設定屬性在la

設定事件

我們在寫監聽事件時,往往是 mButton1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(Vie

通過介面回撥方式來設定RecyclerView的條目事件

提到RecyclerView大家總會拿它與ListView相比較, RecyclerView是具有比ListView更具擴充套件性的控制元件, RecyclerView繼承的是ViewGroup, 可以說也是ViewGroup的官方定義控制元件, Recycle

PopupWindow事件

1.setTouchable(boolean touchable) PopupWindow是否響應touch事件,預設為true。設定為fasle的話,所有的觸碰事件均無響應。 2.setFocusable(boolean focusable) 是否具有獲取焦點的能力,

Android 實現TextView的部分文字和網路連結及電話號碼

前言 最近在寫專案的時候遇到了一個這樣的需求,要像qq一樣,點選評論的者的名字要跳轉評論者的使用者資訊介面,並且點選評論資訊中的web連結要跳轉到WebActivity,同時如果是其他數字的話要像qq一樣點選並顯示底部Dialog提示是播打電話還是複製號碼。 效

Android RecyclerView (三)初學,為RecyclerView新增Item

前兩篇文章講述瞭如何基本的使用RecyclerView呈現出自己想要的效果,但是我好奇的是,為什麼RecyclerView沒有.SetOnClick之類的方法呢,RecyclerView不得不承認,它是一款很強大的軟體,僅僅幾行程式碼就可以切換出自己想要的佈局,

按鈕事件寫法

按鈕四種點選事件寫法 [1]通過內部類來實現按鈕點選事件  [2]通過匿名內部類去實現 btn1.setOnClickListener(new View.OnClickListener() { @Override public

RecyclerView中單個item裡面的子檢視的

資料來源:datas = new ArrayList<>(); for (int i = 0; i < 200; i++) { datas.add("aaaaa" + i); }RecyclerV

spannablestring用在fragment中,設定無效

主要程式碼如下         @Override         public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {             super.onViewCr

Ngui 事件實現方式及在3d場景點透事件

[C#] 純文字檢視 複製程式碼 using UnityEngine; using System.Collections; public class EventListerrnTest : MonoBehaviour { public Transform btn01; public Transf

android方法實現事件

Android實現監聽事件的四種方式(匿名內部內實現,外部類實現,介面實現,繫結到標籤) 1. 使用匿名內部類的方式實現監聽事件 使用方法: 首先為要實現監聽的物件繫結監聽器,例如為一個Button物件繫結一個監聽器botton.setOnClickListener();。

百度地圖路線規劃路線的起始圖示的

最近專案中用到百度地圖,其中一個功能是點選路徑規劃生成的路線的終點圖示彈出InfoWindow,顯示目的地資訊。 我是這樣解決的: 在DrivingRouteOverlay中, @Override public final List<OverlayOptions&g

ListView中嵌入button,無響應的解決方案

    開發中很常見的一個問題,專案中的listview不僅僅是簡單的文字,常常需要自己定義listview,自己的Adapter去繼承BaseAdapter,在adapter中按照需求進行編寫,問題就出現了,可能會發生點選每一個item的時候沒有反應,無法獲取的焦點。原因多半是由於在你自己定義的Item中

Android中Preference的使用以及事件分析

                  在Android系統原始碼中,絕大多數應用程式的UI佈局採用了Preference的佈局結構,而不是我們平時在模擬器中構建應用程式時使用的View佈局結構,例如,Setting模組中佈局。當然,凡事都有例外,FMRadio應用程式中

Android實現TextView中部分文字事件

    通常我們只需要用TextView來顯示文字資訊,展示給使用者看,而把點選相應的監聽事件交給Button等控制元件來處理,當然TextView也可以實現點選事件。有時候我們要對TextView中

Fragment中RecyclerView的使用解析,以及事件處理

RecyclerView是可以代替listview使用的新元件,個人感覺其主要特色:其介面卡adapter中,重寫的東西少了,頁面展示的效果跟加多了,比如可以在RecyclerView設定listview的顯示效果,也可以設定gridview的顯示效果,也可以設定瀑布流的顯示效果!下面程式碼主要

ios UIButton的與鬆開事件處理

    #import "ViewController.h"              @interface ViewController ()              @property (nonatomic, strong) UIButton *testbt