u011360175
Yagami丶
2016-06-07 03:52

通过子线程传递消息,主线程中handler接受消息更新UI 带来的内存泄露问题,如何解决

请教一个问题:
伪代码:
public class MainActivity{
new Thread(){
void run(){
...
handler.sendMessage();
}
}
private handler = new Handler(){
handMessage(){
更新UI操作;
}
}
}

这时提示handler会造成内存泄露,解决内存泄露需要重写Handler,实例化弱引用,这时重写的Handler为static,不能进行一些UI相关的操作,如Toast.(MainActivity,"",LENGTH_SHORT).show();

那怎样通过handler传递的数据更新UI,同时规避内存泄露问题

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

2条回答

为你推荐

换一换