2011-10-17 176 views
3

我得到一個強制關閉這個的Android的Java設置圖像資源

if(num1.getText().equals("0")) { 
      num1.setText("1"); 
      ImageView hpdown1 = (ImageView)findViewById(R.id.hair); 
      hpdown1.setImageResource(R.drawable.haie2); 
     } 

請幫助..

+2

我懷疑在日誌的某處會出現異常。找到它,它會給更多的信息.​​.. –

回答

2

你不說,但我猜一個空指針異常。在調用setImageResource之前,確保hpdown不是null

15

您可以使用Resources類中的getDrawable方法。例如:

ImageView image = (ImageView) findViewById(R.id.image); 
Resources res = getResources(); /** from an Activity */ 
image.setImageDrawable(res.getDrawable(R.drawable.myimage)); 
+0

要支持舊版本使用ResourcesCompat像這樣:http://stackoverflow.com/a/29041466/1732338 –

0

有個聲音告訴我,你的問題是,你的資源是:R.drawable.haie2這對於我來說,在你的代碼的情況下,看起來它是被設爲R拼寫錯誤.drawable.hair2

2

已經被廢棄,

getResources().<strike>getDrawable</strike>(R.drawable.myimage)); 

image.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.menu_southamerica));