中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中點擊事件的四種寫法詳解

發布時間:2020-10-13 07:31:27 來源:腳本之家 閱讀:207 作者:salmon_zhang 欄目:移動開發

Android中點擊事件的四種寫法

  1. 使用內部類實現點擊事件
  2. 使用匿名內部類實現點擊事件
  3. 讓MainActivity實現View.OnClickListener接口
  4. 通過布局文件中控件的屬性

第一種方法:使用內部類

基本步驟如下:

1. 新建一個MyOnClickListener類并實現View.OnClickListener接口

2. 重寫View.OnClickListener接口中的OnClick(View view)方法

3. 給Button綁定一個監聽器,并監聽一個點擊事件

示例代碼如下:

public class MainActivity extends Activity {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
  //必須調用一次父類的該方法,因為父類中做了大量的工作
  super.onCreate(savedInstanceState);
  //給當前的Activity綁定一個布局
  setContentView(R.layout.activity_main);
  //通過調用父類的findViewById方法,根據控件的id獲取控件對象
  btn = (Button) findViewById(R.id.button);
  //使用內部類(實現OnClickListener)給button綁定一個監聽器,監聽點擊事件
  btn.setOnClickListener(new MyOnClickListener());
}

/*注意:這里的OnClickListener是android.view.View包下的,
   不是android.content.DialogInterface包下的。*/
class MyOnClickListener implements View.OnClickListener{
  @Override
  public void onClick(View v) {
    System.out.println("使用內部類實現點擊事件");
  }
}

第二種方法:使用匿名內部類

基本步驟如下:

1. 給Button綁定一個監聽器,并監聽一個點擊事件

2. 在setOnClickListener方法中直接傳入一個OnClickListener對象,并實現OnClick方法

示例代碼如下:

public class MainActivity extends Activity {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
  //必須調用一次父類的該方法,因為父類中做了大量的工作
  super.onCreate(savedInstanceState);
  //給當前的Activity綁定一個布局
  setContentView(R.layout.activity_main);
  //通過調用父類的findViewById方法,根據控件的id獲取控件對象
  btn = (Button) findViewById(R.id.button);
  //使用匿名內部類(實現OnClickListener)給button綁定一個監聽器,監聽點擊事件
  btn.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
      System.out.println("使用匿名內部類實現點擊事件");
      }
    });
  }
}

第三種方法:讓MainActivity直接實現View.OnClickListener接口

基本步驟如下:

1. 讓MainActivity直接實現View.OnClickListener

2. 在MainActivity類中重寫onClick方法

3. 給Button綁定一個監聽器,并監聽一個點擊事件。

注:此時setOnClickListener傳入的是this

示例代碼如下:

public class MainActivity extends Activity implements OnClickListener {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
  //必須調用一次父類的該方法,因為父類中做了大量的工作
  super.onCreate(savedInstanceState);
  //給當前的Activity綁定一個布局
  setContentView(R.layout.activity_main);
  //通過調用父類的findViewById方法,根據控件的id獲取控件對象
  btn = (Button) findViewById(R.id.button);
  //使用MainActivity實現OnClickListener接口給button綁定一個監聽器,監聽點擊事件
  //注:此時setOnClickListener傳入的是this
  btn.setOnClickListener(this);
}
//實現OnClickListener接口中的onClick方法
@Override
public void onClick(View v) {
  System.out.println("讓MainActivity實現View.OnClickListener接口從而實現點擊事件");
  }
}

第四種方法:通過布局文件中控件的屬性

基本步驟如下:

1. 在activity_main.xml中給Button控件添加Android:onClick=”action”屬性

2. 在Activity中實現action方法,action方法必須滿足如下三個條件:

(1) 方法的訪問修飾符必須是public

(2)方法的名稱必須跟android:onClick=”action” 中的名稱完全一致

(3)形參必須是View類型

示例代碼如下:

public class MainActivity extends Activity {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
  //必須調用一次父類的該方法,因為父類中做了大量的工作
  super.onCreate(savedInstanceState);
  //給當前的Activity綁定一個布局
  setContentView(R.layout.activity_main);
  //通過調用父類的findViewById方法,根據控件的id獲取控件對象
  btn = (Button) findViewById(R.id.button);
  System.out.println("Button 是"+btn);
}
//利用反射給button綁定一個監聽器,監聽點擊事件
/**
 * 1:方法的訪問修飾符必須是public
 * 2:方法的名稱必須跟android:onClick="call" 中的名稱完全一致
 * 3:形參必須是View類型
 * 注:形參View其實就是Button對象本身
 * */
public void call(View view ){
  System.out.println("View 是"+view);
  System.out.println("通過反射實現點擊事件");
  }
}

友情提醒:形參View其實就是Button對象本身

Android中點擊事件的四種寫法詳解

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

图木舒克市| 北流市| 黄梅县| 贡山| 米脂县| 民乐县| 红河县| 揭阳市| 法库县| 竹山县| 丰镇市| 湖州市| 措美县| 原平市| 桂阳县| 苏尼特左旗| 那坡县| 武穴市| 织金县| 涞水县| 双江| 玉门市| 邻水| 梁河县| 邛崃市| 万山特区| 哈密市| 兴安盟| 沙田区| 林芝县| 兰考县| 邮箱| 车险| 巩义市| 呼伦贝尔市| 巨鹿县| 仪陇县| 交口县| 醴陵市| 涿鹿县| 高淳县|