关于界面刷新时报错的重要原因。

来源:互联网 发布:puppy linux做u盘启动 编辑:程序博客网 时间:2024/06/03 19:44
1)当使用的是刷新整个Activity的时候,A Activity被B Activity所覆盖,这个时候,本地的handler
  是B Activity的handler,此时接到服务端的消息,要求刷新A 界面的某个控件,就会报错。   
  解决的方式有两种,一种是指定局部(指定控件)去刷新,而不刷整个Activity。
  第二种是,用回调的方式来刷新界面,给该界面绑定上刷新的监听,当是该Activity在最上
  层时,就会刷新,不是就会把监听给移除,就不会刷新界面了。
  麻将游戏中打牌界面使用了两种方式,指定控件刷新 是为了解决,在打牌的时候,弹出玩
  家的详细信息的Activity.  监听回调的刷新 是考虑到网络延时, 当出牌消息发送给服务器,并没有
  收到响应,退出打牌界面后,收到服务器响应,会报空指针或者数组越界的错误。
0 0
原创粉丝点击