在最近的Google IO中,有一个有关实现宁静的客户端应用程序的演示。不幸的是,这只是高层讨论,没有实现的源代码。
在此图中,在返回路径上,有各种不同的对其他方法的回调。
Google io演示幻灯片
如何声明这些方法是什么?
我了解回调的想法-发生某个事件后会调用一段代码,但是我不知道如何实现它。到目前为止,实现回调的唯一方法是重写各种方法(例如onActivityResult)。
我觉得我对设计模式有基本的了解,但是我继续着迷于如何处理返回路径。
在许多情况下,您都有一个接口并传递实现该接口的对象。例如,对话框具有OnClickListener。
就像一个随机的例子:
// The callback interface interface MyCallback { void callbackCall(); } // The class that takes the callback class Worker { MyCallback callback; void onEvent() { callback.callbackCall(); } } // Option 1: class Callback implements MyCallback { void callbackCall() { // callback code goes here } } worker.callback = new Callback(); // Option 2: worker.callback = new MyCallback() { void callbackCall() { // callback code goes here } };
我可能弄乱了选项2中的语法。这还为时过早。