猿问

在两个正在运行的活动之间传递数据

我需要将数据从一项活动传递到另一项活动。第一次没有问题,因为创建了一个新的意图。我的问题是我使用标志 FLAG_ACTIVITY_REORDER_TO_FRONT,因为我不想破坏活动,因为我不想每次切换活动时都进入 onCreate。我的问题是,如何从两个正在运行的活动中传递一个数组?


我正在 android studio 中创建一个类似于 Yatzy 的游戏。在一项活动中,您掷骰子,在另一项活动中,您在记分牌上设定分数。每次玩家导航到记分牌时,都会显示所有可能的结果,除了已经选择的结果(在这些地方你会看到选择的结果),然后玩家可以选择一个分数,例如,“满堂彩” ”。当我在这两个活动之间导航时,我不想破坏它们,因为它们包含我不想重置的信息。因此我使用 FLAG_ACTIVITY_REORDER_TO_FRONT,但是当我使用它时,骰子的新组合没有显示,它只显示骰子的第一个组合。


这是我从 MainActivity 传递数据时的情况:


Intent openMainActivity= new Intent(MainActivity.this, ScoreboardActivity.class);

openMainActivity.putExtra("scoreList", game.showScoreAlt());

openMainActivity.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT));

startActivity(openMainActivity)

这是我在其他活动中收到数据的时间:


Bundle extras = getIntent().getExtras();

scoreList = extras.getIntArray("scoreList");


慕尼黑5688855
浏览 95回答 1
1回答

芜湖不芜

你可以试试这个Activity.onNewIntent()方法。@Overrideprotected void onNewIntent(Intent intent) {    super.onNewIntent(intent);    setIntent(intent);}
随时随地看视频慕课网APP

相关分类

Java
我要回答