java.lang.NullPointerException:試圖調用虛方法'void android.widget.ImageView .setImageResource(int)'空對象引用java.lang.NullPointerException:嘗試調用空對象引用虛擬方法'void android.widget.ImageView.setImageResource(int)'
我想使第一個活動的圖標/圖像傳輸或移動到第二個活動,但出現上面的這個錯誤。
這是第一actvty我的源代碼:
public void next (View view){
Intent intent = new Intent(this, Products.class);
intent.putExtra("Button ID", btnId);
startActivity(intent);
}
然後在第二actvty
btnId = getIntent().getIntExtra("Button ID", btnId);
setContentValues();
}
private void setContentValues() {
ImageView titleImg = (ImageView) findViewById(R.id.imageView_result_title);
View view = (View)findViewById(R.id.layout_goals_goals);
switch (btnId) {
case R.id.imageButton_goals_car:
titleImg.setImageResource(R.drawable.car);
break;
case R.id.imageButton_goals_education:
titleImg.setImageResource(R.drawable.education);
break;
case R.id.imageButton_goals_health:
titleImg.setImageResource(R.drawable.health);
break;
case R.id.imageButton_goals_house:
titleImg.setImageResource(R.drawable.house);
break;
case R.id.imageButton_goals_saving:
titleImg.setImageResource(R.drawable.savings);
break;
case R.id.imageButton_goals_travel:
titleImg.setImageResource(R.drawable.travel);
break;
default:
break;
}
}
IDK發生了什麼:(TSK
發佈第二個活動的整個代碼。你的方法'setContentValues();'在哪裏調用?它必須在'setContentView'之後的'onCreate' **中。 – Vucko
是的。我在onCreate和setContentView – jDmendiola
之後調用它,你的'setContentView'在哪裏?顯示所有的代碼。您需要仔細檢查佈局中的ID。 '(ImageView)findViewById(R.id.imageView_result_title);'顯然是返回null - 要麼你沒有誇大佈局(忘記調用'setContentView'),或者在佈局膨脹之前調用'setContentValue',或者它實際上沒有ID爲R.id.imageView_result_title的視圖。 – trooper