標籤:
package com.sxt.callback;public class Button { //預存一段按鈕點擊的響應代碼 private OnclickListener mOnClickListener; //給mOnClickListener複製的方法 public void setOnClickListener(OnclickListener l){ this.mOnClickListener=l; } //按鈕點擊後,調用本方法響應使用者的操作 public void performClick(){ mOnClickListener.onClick();//回調 }}
package com.sxt.callback;public interface OnclickListener { void onClick();//點擊事件的響應}
package com.sxt.callback;import java.util.Scanner;public class TestCallback { static Button btnLogin,btnRegiser; public static void main(String[] args) { btnLogin=new Button(); btnRegiser=new Button(); OnclickListener listener=new OnclickListener() { @Override public void onClick() { System.out.println("執行登陸操作"); } }; btnLogin.setOnClickListener(listener); btnRegiser.setOnClickListener(new OnclickListener() { @Override public void onClick() { System.out.println("執行註冊操作"); } }); System.out.println("1-點擊登陸按鈕"); System.out.println("2-點擊註冊按鈕"); int select=new Scanner(System.in).nextInt(); switch (select) { case 1://點擊了登陸按鈕 btnLogin.performClick(); break; case 2://點擊了註冊按鈕 btnRegiser.performClick(); break; } }}
android 11 類比onclick 事件