2013-06-27 35 views
5

我想製作一個電池應用程序,它應該以圖像的形式向用戶通知電池的百分比。現在,對於電池百分比0-100,我總共需要101個圖像。我想要做的是可以將所有這些圖像插入數組並相應地使用它們。例如,如果我的電池電量百分比是47%,那麼排在第47位的圖像應該是資源。 也就是說,假設我有ImageView的命名電池,我有一個名爲batteryimage 陣列(包含所有101個圖像)然後我應該能夠做到這一點,如何獲取圖像數組?

Battery.setBackgroundResource(R.drawable.batteryimage[p]) 

其中p將是目前電池的百分比,我將通過代碼得到。

希望大家明白我想要的東西..感謝名單提前..

+3

100的圖像?真?當然這取決於你,但考慮重新使用一個圖像來顯示進度會更好。 –

+0

我只是想,覆蓋透明圖像,只使用其中一個圖像的0-100%界限,你會更好地記憶明智更多的專業人士比缺點 – JRowan

回答

14

定義圖片ID這樣

int[] p = {R.drawable.image1, R.drawable.image2....} 

一個陣列現在像

這個陣列的不同病症使用的成員
Battery.setBackgroundResource(p[0]) // or p[1] 

或者您可以使用ENUM使其更具可讀性。

但是..我想你應該以另一種方式思考。而不是使用100個不同的圖像創建一個自定義進度條來顯示您的電池的不同狀態。

要知道,進度條的基礎知識見文件here 並創建自定義的進度,你可以檢查此so question

+1

是的,值得注意的是,你不能真正做到這一點換句話說。只有通過手動編寫所有圖像的ID。 –