使用Intent在活动之间传递

时间:2017-10-17 12:51:49

标签: android android-intent

我正在制作一款旨在帮助用户练习词汇量的应用程序。它有6个活动,分别称为“活动1”,“活动2”等。

Activity3开始收集信息,并将其放入String数组中。这将使用Bundle传递给下一个活动。在Activity6中进行评估后,其中一个按钮会让用户再次返回Activity4,重复练习。我尝试通过创建一个指向Activity3的新意图来实现这一点,但在模拟器屏幕上,我收到以下消息:“不幸的是应用程序已停止»。我真的无法弄清楚为什么。我可以将多个Intent指向同一个活动,或者这样做有什么问题吗? (Activity2,现在Activity6都指向Activity3)。

enter image description here

不幸的是,我还不熟悉使用Log.Cat。我将继续努力,同时发送一些代码。发布所有代码可能很多,但这里是我认为相关的代码:

在Activity2中,我使用以下代码创建一个Intent,并将信息传递给Activity3:

btnEnd.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View v) {

 vocabularyArray[arraySize]editForeignWord.getText().toString();
 vocabularyArray[100 + arraySize] = 
 editTranslation.getText().toString();

Bundle b = new Bundle();
b.putStringArray("vocabularyArrayToPass", vocabularyArray);
b.putInt("array_size", arraySize);
            Intent intentGoTo3 = new Intent(Activity2.this, 
Activity3.class);
            intentGoTo3.putExtras(b);
            startActivity(intentGoTo3);
        }
    });

在Activity6中我使用以下代码返回Activity3:

 btnAgain.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View v) {
     Intent intentGoTo3 = new Intent(Activity6.this,Activity3.class);
            startActivity(intentGoTo3);
        }
    });

1 个答案:

答案 0 :(得分:1)

我认为您的代码没有任何问题,这是完美的。 您应该尝试检查日志cat是否有错误。 您可以按照以下步骤到达目的地: Android Studio :: 在android studio的Downside,您可以看到" Android Monitor"标签。 因此,当您单击该菜单时,您可以看到log cat菜单,之后您可以向上滚动或向下滚动以查找错误。错误将以红色显示。