“侦听器”或“观察者”模式是在Android开发中创建异步回调的最常见策略。
public class MyCustomObject { //1-定义接口 public interface MyCustomObjectListener { public void onAction(String action); } //2-声明您的侦听器对象 private MyCustomObjectListener listener; // 并在构造函数中对其进行初始化 public MyCustomObject() { this.listener= null; } //3-创建您的监听器设置器 public void setCustomObjectListener(MyCustomObjectListener listener) { this.listener= listener; } // 4-触发侦听器事件 public void makeSomething(){ if (this.listener != null){ listener.onAction("hello!"); } }
现在在您的活动中:
public class MyActivity extends Activity { public final String TAG = "MyActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); MyCustomObject mObj = new MyCustomObject(); //5-实现侦听器回调 mObj.setCustomObjectListener(new MyCustomObjectListener() { @Override public void onAction(String action) { Log.d(TAG, "Value: "+action); } }); } }