首页 > 代码库 > 请教把单独类里的值返回到当前activity

请教把单独类里的值返回到当前activity

============问题描述============


项目里,一个activity   A,还有一个单独的class  B
现在,A点击按钮里有个方法,触发之后会联网获取数据,需要20秒左右
并且获取后的数据是在B的callback函数获取,现在B里的可以获取到这些参数,
但是不知道如何从B里把数据传递给A并显示在textView里。

求大虾指导,初学虚心求解。

============解决方案1============


这个跟常用的Button中的onClickListener差不多的,B相当于Button类,点击按钮后,Button类收到触摸数据,Activity implements OnClickListener就可以在onClick函数里面获取对应的数据和做出响应

在class B中增加一个接口
interface BInterface {
     void recvData(Data data);
}

再增加一个成员变量BInterface inter;和函数
setBInterface(BInterface inter) {
    this.inter = inter;
}

在Activity A中implements BInterface,然后重载void recvData(Data data)

现在用这个BInterface,在初始化class B的时候调用setBInterface,把Activity A作为参数传递进去,然后class B中的callback那一段代码中插入一句 if (this.inter != null) { this.inter.recvData(Data data); } 就OK了,这样B中获取的数据也会通过BInterface传递到Activity A中,这里面的Data只是举个例子,具体看你传递的是什么数据

请教把单独类里的值返回到当前activity