活动加载数据两次

时间:2015-03-01 21:26:51

标签: android android-activity bundle android-lifecycle

有一个Activity - 名为MainActivity。有一个xml - 名为activity_main。它包含菜单布局和游戏布局。

菜单布局 - 包含"开始匹配" Button

游戏布局 - 包含ListviewString个项目(4个字......)和一个"完成" Button

当应用启动时,菜单布局可见,游戏布局隐藏。当"开始游戏"单击Button,隐藏菜单布局并显示游戏布局。当"完成"单击Button,将显示菜单布局,并隐藏游戏布局。

问题:点击"完成"开始新游戏后Button,之前的游戏数据被加载到当前游戏中:

Listview有8个项目而不是4个。

我认为它与onSaveInstanceState有关:当我点击"开始匹配"第二次,它加载上一场比赛的状态。

此外,点击"开始匹配"后会调用onDestroy()第二次,所以onResume()onCreate()永远不会被再次调用 - 除非我退出应用并再次启动。

我不确定如何解决这个问题。我尝试将onStart()置空,但这没有帮助:

onSaveInstanceState

有人可以帮忙吗?

请告诉我是否需要提供更多代码或信息。

1 个答案:

答案 0 :(得分:0)

为什么不写两个课而不是一个?

  • 一个课程将用于菜单,只有一个布局
  • 游戏本身的第二个

通过这些,您可以确保游戏的价值始终以相同的方式加载,而不会受到之前游戏的影响。