2011-09-27 87 views
0

我需要在主屏幕小部件中放置垂直滾動條,並且經過多次搜索後,我無法找到適用於API3及更高版本的便捷解決方案!Android:如何將垂直進度條添加到主屏幕小部件?

我嘗試了許多解決方案: - 使用在運行時創建的位圖,但在某些顯示它永遠不會達到100% - 一個patch9位圖,但滾動條顯示得到完全搞砸時進度接近0。 - 使用addView()與100現有的佈局,它的工程很好,除了它只有API7以後纔可用! - 包括所有100個佈局,並且一次只顯示一個佈局,工作正常,但在8種不同的佈局佈局中包含這些佈局真是太麻煩!

我試圖以編程方式使用權重,但它不可能,任何其他解決方案來調整基於%的視圖的大小?

下面是一個進度條的佈局我目前使用的:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" android:layout_height="fill_parent"> 
    <ImageView android:layout_weight="11" android:layout_width="fill_parent" 
     android:layout_height="fill_parent" /> 
    <ImageView android:src="@drawable/scale" 
     android:layout_width="fill_parent" android:layout_height="fill_parent" 
     android:layout_weight="89" /> 
</LinearLayout> 

回答

0

目前爲止唯一的解決方案是讓所有可能的進度級別準備好在各種Xml佈局文件中使用。

在Android API < 7上,所有這些需要包含在單個xml佈局中,並且在運行時顯示/隱藏,而在Android API> = 7上,實際上可以使用addRemoteView()來包含所需的佈局以更高效的方式!

-1

您應該使用ScrollView!您必須將其放在佈局中。默認情況下,滾動視圖用於垂直滾動。如果你想水平滾動,你必須指定Horizo​​ntalScrollView。希望這有幫助

+0

我不是在尋找一個滾動視圖,而是一個垂直進度條,我可以在運行時設置它來表示電池電量(或其他數據)。現在,我使用上面的100個佈局文件來匹配從0%到100%的進度條。非常沉重,至少它有效,但不能改變顏色。 – 3c71