我有一个MainActivity,其中有一个子活动PatientActivity。
PatientActivity具有子活动RecordActivity。
在MainActivity中,我intent
给PatientActivity添加了额外的内容:
MainActivity.java
...
listPatients.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id)
{
try {
Intent intent = new Intent(view.getContext(), PatientActivity.class);
intent.putExtra("patient", patients.getJSONObject(position).toString());
startActivity(intent);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
...
在PatientActivity.java中
...
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
intent = getIntent();
String patientFromJson = intent.getStringExtra("patient");
patient = Patient.fromJson(patientFromJson);
...
现在,在PatientActivity中,我有时会
intent
到RecordActivity。在RecordActivity中,当我按向上按钮(而不是向后按钮)时,它崩溃了,因为PatientActivity.onCreate()找不到患者的参考,从而导致NullPointerException。
我该如何解决?
最佳答案
尝试这个:
Bundle extras = getIntent().getExtras();
ArrayList<String>hi= new ArrayList<String>();
hi = extras.getStringArrayList("patient");