Android中的回调是什么?

我想了解回调的概念。我在互联网上搜索了有关回调的信息,有许多使用接口的示例,一个类正在使用该接口调用另一类的方法。但是我仍然无法理解回调的主要概念,使用回调的目的是什么?



喵喵时光机
浏览 788回答 3
3回答

蝴蝶刀刀

这是一个不错的教程,很好地描述了回调和用例。回调的概念是在另一个类中的某些工作完成时通知类同步/异步。有人称其为好莱坞原则:“不要叫我们,我们叫你”。这是一个例子:class A implements ICallback {     MyObject o;     B b = new B(this, someParameter);     @Override     public void callback(MyObject o){           this.o = o;     }}class B {     ICallback ic;     B(ICallback ic, someParameter){         this.ic = ic;     }    new Thread(new Runnable(){         public void run(){             // some calculation             ic.callback(myObject)         }    }).start(); }interface ICallback{    public void callback(MyObject o);}类A调用类B在线程中完成一些工作。如果线程完成了工作,它将通过回调通知Class A并提供结果。因此,无需进行轮询或其他操作。只要有结果,您就会得到结果。在Android中,在“活动”和“片段”之间使用回调。因为片段应该

慕田峪7331174

我在以下情况下使用:例如,在UI中,我从按钮获得了操作。用户想要下载一个500mb的文件。谢谢,我将初始化后台引擎(AsyncTask类)并将参数传递给他。在用户界面上,我将显示一个阻止进度对话框,并使用户无法进行其他任何单击。问题是:何时从UI删除阻止?答案是:引擎成功或失败的时间,以及回调或通知的时间。通知和回调之间的区别是另一个问题,但是1:1的回调速度更快。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
Android