TabHost中的子Activity跳转到其它Activity的生命周期反常(可能和SurfaceView有关)

text_now 2012-09-03 07:36:41
我写了一个关于tabhost的程序,tabhost下有三个标签,每个标签中的内容都是一个子Activity,第一个标签中包含了一个按钮,可以跳转到其它Activity上去,第二个标签包含的是一个简单的Activity,第三个标签是一个包含SurfaceView的Activity。
程序启动后是默认显示第一个标签的。第一个标签中有一个按钮“跳转”,是跳转到一个Activity(HelloActivity)的。

现在的现象是,程序启动到这个tabhost后,直接按跳转按钮,可以进入到HelloActivity,然后在HelloActivity按返回键,又退回到这个Tab界面(整个过程很流畅)。HelloActivity生命周期是完整的,Log打印如下。

然后再点击Tab2,再点回Tab1后按“跳转”,再从HelloActivity返回,整个过程也是流畅的。
但是,点Tab3(Tab3中是一个含有SurfaceView的Activity)再返回Tab1,点“跳转”后,能够顺利跳转HelloActivity,但按返回键后,却不能很顺利地退出,要卡很久才能退出。通过打印日志显示,它只执行到了onPause,并没有执行onStop和onDestroy。

我再一次点击“跳转”,发现其先执行onCreate、onStart、onResume,然后才是onStop onDestroy(我还没按退出键呢,就执行了这两个函数,好像是要补上上次没有执行过的意思)。

表达的可能有些啰嗦,总之就是点了含有SurfaceView的标签(这个标签其实就是个Activity),对另外一个标签跳转到其它界面造成的影响,但是我不知道为什么会出现这种影响。
这个问题困扰我已多时,我想实现的效果是,从HelloActivity返回时绝对不能卡,另外也不要影响SurfaceView的正常工作。
请各位告诉我为什么会出现这种情况,还有怎么解决这个问题。谢谢大家!
这里是程序代码的下载地址:http://www.kuaipan.cn/file/id_54645195324522527.htm
...全文
500 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
tabhost已经作废了,用Fragment吧,我后悔用了tabhost,布局也受了影响,非常反常,屏幕因为有了TabHost貌似无法正常Measure了
text_now 2012-09-08
  • 打赏
  • 举报
回复
求指导啊,一直没法解决
text_now 2012-09-04
  • 打赏
  • 举报
回复
求大神支持啊

80,337

社区成员

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

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