2011-07-12 68 views
12

如何在android中的imageview中刪除圖像以及如何隱藏整個圖像。Android隱藏和刪除imageview中的圖像

在這裏,我已經通過下面的代碼在imageview中放置圖像。

answerState1.setBackgroundResource(R.drawable.correct); 

我不知道如何刪除或隱藏圖像。此外,我對android開發完全陌生。

+0

setBackgroundResource(0)是最好的選擇。將背景設置爲給定的資源。該資源應該引用可繪製對象或0來移除背景。 – Nepster

回答

34

您可以用下面的方法來設置圖像的可見度要求:

answerState1.setVisibility(View.GONE); // hide image (make the view gone) 

answerState1.setVisibility(View.VISIBLE); // make image visible 

answerState1.setVisibility(View.INVISIBLE); // make image invisible 

在UI,你也可以做類似如下:

<ImageView android:id="@+id/imgPreview" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
android:visibility="gone"/> 
+4

也niki如果你給View.INVISIBLE你創建的ImageView組件的空間將存在那裏.. – jennifer

+0

這就是我現在所做的..基本上我是iphone的iphone開發者,我們可以很容易地從圖像中刪除圖像通過零。或image.removeimage ..有沒有什麼辦法可以像這樣做... jeni .. – nik

+1

@niki public static final int GONE 這個視圖是不可見的,它不需要任何空間用於佈局的目的..所以通常在Android中,我們正在使用此..VieW.GONE – jennifer

2

試試這個 imageview.setVisibility(ImageView.INVISIBLE);

+0

如果我這樣做,那麼ImageView組件的空間將存在正確.. ?? – nik

+0

@nik - 是....將ImageView設置爲INVISIBLE將仍然允許ImageView在UI佈局中佔據空間。使它成爲GONE將導致父母持有ImageView來對待ImageView,因爲它從來沒有。 – dell116

1

您可以使用answerState1.setVisibility(View.INVISIBLE);使視圖看不見,answerState1.setVisibility(View.Gone);使視圖不可見。

0

試試下面的代碼:

ImageView im = (ImageView)findViewById(R.id.imageView1); 
im.setVisibility(View.INVISIBLE); 
im.getLayoutParams().height = 0; 
+0

將高度更改爲0可能會使您想要拉動發完後......想知道爲什麼在將ImageView重新設置爲可見之後,它仍然不可見。 – dell116