2011-10-23 55 views
8

我試圖調用一個ProgressBarsetProgressDrawable在我RemoteViews
但是似乎沒有要上RemoveViews一個setDrawable(<view_id>,<method>,<value>)方法我試過setBitmapsetProgressDrawable需要Drawable不是BitmapsetInt也不起作用。沒有辦法setProgressDrawable上RemoteViews

我想避免加載不同的小部件佈局xml文件來處理不同的顏色進度條。

+0

我同意。 SDK似乎允許使用LayoutInflator實例化一個指向ProgressBar的指針,但似乎沒有發生任何操作。如果ProgressBar是AppWidget組件,那麼setProgressDrawable(),bringToFront()和臭名昭着的setProgress-and-setMax兩個解決方法都不會產生任何影響。它的行爲就好像佈局XML和代碼中的對象指針之間存在斷開連接。 –

+0

@HunterD至少它不只是我,這個問題仍然存在於ICS上:( – Rob

回答

1

沒有辦法做到這一點。我的解決方案不是創建單獨的佈局文件,而是包含具有不同progressDrawable的所有不同ProgressBars的佈局文件。在代碼中,你只能使其中一個可見。

請注意,對於較舊的android版本,不允許直接在Progressbar上調用setViewVisibility。訣竅是在每個條的周圍包裝一個簡單的LinearLayout,並使該包裝不可見/可見。對我來說工作得很好。