2016-06-08 52 views
0

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

+1

發佈第二個活動的整個代碼。你的方法'setContentValues();'在哪裏調用?它必須在'setContentView'之後的'onCreate' **中。 – Vucko

+0

是的。我在onCreate和setContentView – jDmendiola

+0

之後調用它,你的'setContentView'在哪裏?顯示所有的代碼。您需要仔細檢查佈局中的ID。 '(ImageView)findViewById(R.id.imageView_result_title);'顯然是返回null - 要麼你沒有誇大佈局(忘記調用'setContentView'),或者在佈局膨脹之前調用'setContentValue',或者它實際上沒有ID爲R.id.imageView_result_title的視圖。 – trooper

回答

0

變量titleImg可能是空。 。你應該調試這個函數,看它是否真的從setContentValues()中的第一條語句中找到。

+0

是的。我已經解決了這個問題。不管怎麼說,多謝拉 :) – jDmendiola

相關問題