2016-06-08 56 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

相关问题