通常在Android中,我們會在Layout(XML)中設定各元件的背景圖:

android:background="@drawable/dice_1"

 

不過有時候會因特定條件的不同而去修改背景圖片,下述紀錄了如何動態調整背景圖片。

我先在layout中設定dice_1.png為背景圖,然後 onCreate時再動態調整為 dice_2.png為背景圖,先抓圖片dice_1, dice_2 res/drawable 資料夾中:

1.png

 

Layout設定:

2.png

 

接下來我們onCreate的原始碼如下:

 

 

其中line14就是用來動態設定背景圖片的方式:

imageView.setBackground(ContextCompat.getDrawable(this,R.drawable.dice_2));

 

ContextCompat.getDrawable()需要兩個參數,第一個是 context,第二個則是圖檔URI

這樣就可以動態調整圖片了。

 

Reference:

https://stackoverflow.com/questions/12523005/how-set-background-drawable-programmatically-in-android

 

 

arrow
arrow

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()