当前位置: 代码迷 >> Android >> 关于handler跟activity的引用关系
  详细解决方案

关于handler跟activity的引用关系

热度:74   发布时间:2016-04-28 04:23:58.0
关于handler和activity的引用关系
我想在某个线程执行完毕后,通过handler把执行结果告知当前activity,并toast出来。我从handler类里派生了一个myhandler来处理消息,那么在myhandler类中,如何获得当前顶端activity的引用呢?
------解决方案--------------------
"我想在某个线程执行完毕后,通过handler把执行结果告知当前activity,并toast出来" 这个 很好实现,  线程中 发送 Message , 使用 handler.sendMessage(message) 发送信息给 Handler, 在 Handler 对应的分支里面 Toast 对应的字符串. 

Handler 与 Activity 交互 的话, Handler 可以直接访问 Activity中定义的变量 , 不用获取 上下文环境吧 
------解决方案--------------------
写在同一个类中,那可以直接调用,如果不是同个类中,那创建handler时,要传入activity的上下文
------解决方案--------------------
handler是和你创建它的Activity相关联的,所以handler对Activity的引用就是对当前Activity的引用,如果你用单独一个类来写handler的话,就要像楼上所说的实例化时要传入activity的上下文。
------解决方案--------------------
一般来说Handler就在主线程中创建的,跟Activity本身直接交互
  相关解决方案