在ActivityGroup的活动之间导航时出现StackOverflowError



我正在制作一个标签应用程序。在该应用程序中,相同的TabView将显示在层次结构中的多个活动中。我用了ActivityGroup

在我的应用程序中,我可以从包含选项卡的第一个活动导航到它的子活动,并可以通过按子活动中的按钮返回到以前的活动。在这两个活动之间导航时,我在几次导航后得到StackOverflowError。I tried flag

Intent.FLAG_ACTIVITY_CLEAR_TOP

但它没有帮助。我也试过

finish() 

但它完成了整个ActivityGroup。然后我尝试了method

finishActivityFromChild() 

但仍然得到相同的错误。

这是我的代码从第一个活动包含制表符移动到它的子-

intent = new Intent(context, ChildActivity.class);
View view = getLocalActivityManager().startActivity("activity2", intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)) .getDecorView(); 
setContentView(view);
finishActivityFromChild(getCurrentActivity(), 0);

和相同的代码,我正在使用返回到父活动点击一个按钮-

public void onClick(View arg0) {
    intent = new Intent(context, ParentActivity.class);
    View view = getLocalActivityManager().startActivity("activity1", intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)) .getDecorView(); 
setContentView(view);
finishActivityFromChild(getCurrentActivity(), 0);
}

现在我不知道该怎么做这个问题。任何帮助都是感激的。

我认为一些代码会帮助这里。如果我是你,我会尝试大量的函数调用的打印输出,看看哪些函数被递归调用可能导致堆栈溢出。(有些断点也可以达到这个目的)

相关内容

  • 没有找到相关文章

最新更新