2011-11-02 110 views
0

方法一(不工作) 我聲明在XML的ImageView的ImageView的安卓

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_height="wrap_content" 
    android:layout_weight="0.21" 
    android:layout_width="100dp" 
    android:layout_gravity="center"> 
</ImageView> 

然後我宣佈它在代碼

ImageView iv=(ImageView)findViewById(R.id.imageView1); 

然後我下載的網頁(圖像)的圖像

iv.setImageBitmap(image); 
setContentView(iv); 

方法2(工作荷蘭國際集團)

不是XML的,我只是申報

ImageView iv=new ImageView(this); 

然後我從網站上下載一個圖像(圖像)

iv.setImageBitmap(image); 
setContentView(iv); 

爲什麼方法1不工作,方法2工作的問題?

回答

4

方法1應該給出一個強制關閉錯誤,因爲您在setContentView之前使用findViewById。 FindViewById嘗試在setContentView中指定的佈局內查找視圖。所以應該先調用setContentView。

0

你應該做setContentView(R.layout.file_containing_imageView)。然後你可以調用findViewById()。您遇到的問題是您在設置內容視圖之前使用findViewById,因此沒有任何視圖可供查找。

0

我同意@blessenm你應該把setContentView代碼(其中imageView xml寫成)berfor FindViewById圖像。

ex: setContentView(R.layout.mainxml); 
    iv=(imageView)findViewById(R.id.imageView1); 
    iv.setImageBitmap(image); 
相關問題