Android 未收到意图
我有两个活动涉及这个问题。第一种是用户在一个简单的表单样式布局上输入数据。然后,它应该将这4条数据保存到intent(putextra)和startActivity(intent)中 第二个应该检索数据并准备好将它们加载到数组中。当我运行调试时,activity1的意图成功地保存了这些值;然而,activity2表示意图为空。。我不确定其间发生了什么 活动1Android 未收到意图,android,android-intent,Android,Android Intent,我有两个活动涉及这个问题。第一种是用户在一个简单的表单样式布局上输入数据。然后,它应该将这4条数据保存到intent(putextra)和startActivity(intent)中 第二个应该检索数据并准备好将它们加载到数组中。当我运行调试时,activity1的意图成功地保存了这些值;然而,activity2表示意图为空。。我不确定其间发生了什么 活动1 EditText editDebtName = (EditText) findViewById(R.id.dispDebtName);
EditText editDebtName = (EditText) findViewById(R.id.dispDebtName);
debtName = editDebtName.getText().toString();
EditText editDebtAmount = (EditText) findViewById(R.id.dispDebtAmount);
String debtAmountStr = editDebtAmount.getText().toString();
EditText editDebtRate = (EditText) findViewById(R.id.dispDebtRate);
String debtRateStr = editDebtRate.getText().toString();
EditText editDebtPayment = (EditText) findViewById(R.id.dispDebtPayment);
String debtPaymentStr = editDebtPayment.getText().toString();
Intent i = new Intent(this, DebtList.class);
i.putExtra("newDebtName", debtName);
i.putExtra("newDebtAmount", debtAmountStr);
i.putExtra("newDebtRate", debtRateStr);
i.putExtra("newDebtPayment", debtPaymentStr);
startActivity(i);
活动2
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.debtlist);
String[] debtName = new String[10];
String[] debtAmount = new String[10];
String[] debtRate = new String[10];
String[] debtPayment = new String[10];
int trigger = 5;
SharedPreferences sharedPref= getSharedPreferences("chaosdatasnowball", 0);
debtName = getFromSharedPreference("debtNames", this.getApplicationContext());
debtAmount = getFromSharedPreference("debtAmounts", this.getApplicationContext());
debtRate = getFromSharedPreference("debtRates", this.getApplicationContext());
debtPayment = getFromSharedPreference("debtPayments", this.getApplicationContext());
trigger = sharedPref.getInt("trigger", trigger);
Bundle extras = getIntent().getExtras();
debtName[trigger] = extras.getString("newDebtName");
debtAmount[trigger] = extras.getString("newDebtAmount");
debtRate[trigger] = extras.getString("newDebtRate");
debtPayment[trigger] = extras.getString("newDebtPayment");
也不会抛出任何错误消息。我想确定的是。。为什么我的意图没有被接收?我认为这个问题是由这个代码引起的
SharedPreferences sharedPref= getSharedPreferences("chaosdatasnowball", 0);
debtName = getFromSharedPreference("debtNames", this.getApplicationContext());
debtAmount = getFromSharedPreference("debtAmounts", this.getApplicationContext());
debtRate = getFromSharedPreference("debtRates", this.getApplicationContext());
debtPayment = getFromSharedPreference("debtPayments", this.getApplicationContext());
因为我在没有上面代码的情况下进行测试,activity2仍然会收到bundle值。如果您在没有上述代码的情况下尝试,但仍然存在该问题,则应尝试调试并显示字符串数组的所有值,以再次确定问题。意图为空,还是附加值?