目前我有这个设置:
活动A是主要的
活动A开始活动B
B为自己添加一个片段:
getFragmentManager().beginTransaction().add(android.R.id.content, new FirstFragment()).commit();
然后在交互之后,FirstFragment
被SecondFragment
替换,并被添加到后台堆栈:
getFragmentManager().beginTransaction().replace(android.R.id.content, new SecondFragment()).addToBackStack(null).commit();
如果用户点击此Fragment
,则启动浏览器:
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(licenceInfo[2].toString()));
browserIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(browserIntent);
但是当用户使用后退按钮从浏览器返回我的应用程序后,它就搞砸了。 SecondFragment
为drawn on FirstFragment
。 :S如果我点击后退,SecondFragment
将不再显示。最后,一件非常恼人的事情:当返回活动A时,会调用其onCreate
方法。
如果我没有从SecondFragment
启动浏览器,一切都很好。我错过了什么?谢谢我提前!
答案 0 :(得分:0)
好的,我想这是我ROM的失败。我使用自定义的KitKat ROM,它可以与我的旧HTC Sensation设备一起使用。该ROM产生上述行为。我刚尝试使用Android 4.2手机和4.4模拟器,两者都正常工作......