所以我遇到的问题是我的应用程序在启动时不断崩溃,我有两个活动。活动A和活动B。我的应用程序在活动A上启动,但我在活动B中创建了一个捆绑包,并将其发送到活动A。因此,当它启动时,捆绑包为空或null,因此崩溃,我该如何解决此问题?谢谢
这是在创建时的活动A(启动活动)中
Bundle extras = getIntent().getExtras();
Title = extras.getString("Title");
Description = extras.getString("Description");
Price = extras.getString("Price");
Availability = extras.getString("Availability");
然后我们让我在活动B 中创建捆绑包
Intent intent = new Intent(B.this, A.class);
Bundle extras = new Bundle();
extras.putString("Title", PostTitle);
extras.putString("Description", PostDescription);
extras.putString("Price", PostPrice);
extras.putString("Availability", PostAvail);
intent.putExtras(extras);
startActivity(intent);
我建议如下:
A。使用意向捆绑包:
Intent pIntent = new Intent(this, JustaClass.class);
Bundle extras = pIntent.getExtras();
extras.putString(key, value);
B。创建新捆绑包:
Intent pIntent = new Intent(this, JustaClass.class);
Bundle pBundle = new Bundle();
pBundle.putString(key, value);
mIntent.putExtras(pBundle);
C。使用Intent的putExtra()方法:
Intent pIntent = new Intent(this, JustaClass.class);
pIntent.putExtra(key, value);
最后,在启动的"活动"中,您可以通过以下方式阅读:
String value = getIntent().getExtras().getString(key)
我只是用字符串作为传递的例子,我指的是Bundle和Intent。