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

时间:2013-03-13 11:17:36

标签: android android-activity stack-overflow activitygroup activity-finish

我正在使用标签创建应用程序。在该应用程序中,同一TabView将在层次结构中的多个活动中显示。为此,我使用了ActivityGroup

在我的应用程序中,我可以从包含第一个活动的选项卡导航到其子活动,并可以通过按下子活动中的按钮返回到上一个活动。在这两个活动之间导航时,我在几次导航后得到StackOverflowError。 我试过了旗帜

Intent.FLAG_ACTIVITY_CLEAR_TOP

但它没有帮助。 我也试过

finish() 

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

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);
}

现在我不知道该怎么办这个问题。任何帮助表示赞赏。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我认为有些代码会对此有所帮助。如果我是你,我会尝试打印出所调用函数的打印输出,以查看可能导致堆栈溢出的可执行函数。 (一些断点可能也会起作用)