Android 关于SingleTask模式

qq_31080163 2016-05-17 10:16:31
A.class为SingleTask模式,A中启动B.class,从B再返回A时在onNewIntent方法中重绘UI,方法都执行了,但UI没有刷新是什么原因呢????还请各位大牛帮忙分析下,谢谢。
...全文
226 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_26763799 2016-05-17
  • 打赏
  • 举报
回复
回退健只是回到当前activity堆栈的下一个,不存在什么重绘啊...又不是重新打开一个activity,确定走了onNewIntent?应该只是onresume,不会去重新onstart和oncreate,所以不会重绘,需要的话在onresume生命周期里做些操作,或者staetBactivity时用startactivityforresult方法
Yang_Farley 2016-05-17
  • 打赏
  • 举报
回复
你在a中打印一下生命周期,看看是不是有的方法没有执行
qq_26763799 2016-05-17
  • 打赏
  • 举报
回复
引用 4 楼 qq_31080163 的回复:
[quote=引用 2 楼 qq_26763799 的回复:] 回退健只是回到当前activity堆栈的下一个,不存在什么重绘啊...又不是重新打开一个activity,确定走了onNewIntent?应该只是onresume,不会去重新onstart和oncreate,所以不会重绘,需要的话在onresume生命周期里做些操作,或者staetBactivity时用startactivityforresult方法
我是直接结束了B.class回到A onNewIntent会在OnResume之前执行 两个方法里都试过做操作处理,执行了也得到了返回的数据,但是UI没更新[/quote] Aactivity里需要更新什么UI,这个activity的布局是怎样的,我刚试了,B finish后,A再onresume里面重新settext的值是可以的
qq_31080163 2016-05-17
  • 打赏
  • 举报
回复
引用 5 楼 heaimnmn 的回复:
要么就是绘画UI没有在主线程之中
是在主线程中执行的: nOnUiThread(new Runnable() { @Override public void run() { Vibrator vibrator; LogUtils.i("maincount1", count); getMyApplication().drawPoint(count, msg); msg.invalidate();
哎,真难 2016-05-17
  • 打赏
  • 举报
回复
要么就是绘画UI没有在主线程之中
qq_31080163 2016-05-17
  • 打赏
  • 举报
回复
引用 1 楼 farley119 的回复:
你在a中打印一下生命周期,看看是不是有的方法没有执行
方法都执行了 返回的数据也有 但是界面没更新
qq_31080163 2016-05-17
  • 打赏
  • 举报
回复
引用 2 楼 qq_26763799 的回复:
回退健只是回到当前activity堆栈的下一个,不存在什么重绘啊...又不是重新打开一个activity,确定走了onNewIntent?应该只是onresume,不会去重新onstart和oncreate,所以不会重绘,需要的话在onresume生命周期里做些操作,或者staetBactivity时用startactivityforresult方法
我是直接结束了B.class回到A onNewIntent会在OnResume之前执行 两个方法里都试过做操作处理,执行了也得到了返回的数据,但是UI没更新

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧