如何获取回调值进入主方法?

时间:2018-10-30 19:28:21

标签: java android

有什么方法可以将回调值发送到main方法中。

public List<Passion> downloadpassion()
  {

   fsDB.getPassionvalue(new OnDownLoadPassionList() {
       @Override
       public List<Passion> OnResult(List<Passion> passionList) {
           return passionList; //this is callback value 
       }
   });

    return passionList; //want passionList to pass here
}

2 个答案:

答案 0 :(得分:0)

您应该创建这样的界面

public interface EventListener{
   void onListComplited(List<Passion> passionList)
}

,然后将其添加为函数的输入

public void downloadpassion(EventListener listener)
{

 fsDB.getPassionvalue(new OnDownLoadPassionList() {
   @Override
   public List<Passion> OnResult(List<Passion> passionList) {
         listener.onListComplited(passionList);
   }
 });

}

答案 1 :(得分:0)

您不能从回调中的值return开始。

像这样重写

public void downloadpassion(OnDownLoadPassionList onDownload) {
   fsDB.getPassionvalue(onDownload);
}

使用其他方法

main() {
    client.downloadpassion(new OnDownLoadPassionList() {
       @Override
       public List<Passion> OnResult(List<Passion> passionList) {
           // TODO: use this callback value
       }
   });
}