2011-05-17 62 views
1

有人知道我爲什麼得到這個(見圖)?android - seekbar進度沒有得到一路

這是我如何設置:

this._seekBar.setProgressDrawable(_context.getResources().getDrawable(R.drawable.common_controls_player_progressbar_bg_expanded)); 
       this._seekBar.setThumb(_context.getResources().getDrawable(R.drawable.ringtone_scrub)); 
this._seekBar.setThumbOffset(0); 
this._seekBar.setMax(1000); 
this._seekBar.setMinimumHeight(6); 

搜索欄本身:

<SeekBar android:id="@+id/seekbar_ctrl" android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxHeight="6dp"/> 

展開視圖XML

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:id="@android:id/background"> 
     <shape> 
     <solid android:color="@color/player_progressbar_gray"/> 
     </shape> 
    </item> 
    <item android:id="@android:id/secondaryProgress"> 
     <clip> 
      <shape> 
      <solid android:color="@color/player_progressbar_gray"/> 
      </shape> 
     </clip> 
    </item> 
    <item android:id="@android:id/progress"> 
     <clip> 
      <shape> 
       <solid android:color="@color/player_progressbar_green"/> 
      </shape> 
     </clip> 
    </item> 
</layer-list> 

它確實發生在這兩個展開和摺疊視圖。我錯過了什麼?

預先感謝您enter image description here

+1

應該是什麼樣子? – 2011-05-17 21:26:58

+0

它假設被塗成綠色(與擦洗顏色相同)直到擦洗位置。但它不這樣做。 seekbar由控件(ImageView)觸發,所以點擊它所做的就是顯示進度條。因此,如果我的價值是50%,它應該將進度提高到50%,但是直到我真正開始負責進度(控制者)的控制時纔會這樣做。一旦玩家開始工作,它再次繪製。但在暫停模式下,當我看着seekbar時,它看起來像上面那樣。 – dropsOfJupiter 2011-05-18 00:39:33

回答

0

這是由於推出,我是切換兩個控件。 1.展開模式2.摺疊。由於我一次只設置一個控件,所以進度狀態在切換之間丟失。所以我做了什麼來解決這個問題:我在控制器上放置了2個進度條控件,並且同時設置它們。一個隱藏着另一個被顯示。在切換事件期間,我切換了可見度。這解決了這個問題。我們採用同樣的控制方式的第二個問題是,自來水的進度會在設定之前來回閃爍。事實證明,這是手機操作系統的問題,並與玩家本身有關。我們得到了一個新的操作系統構建版本,解決了這個問題。

+0

這裏的重點有時候這些東西可能與您的手機相關,而不是您的代碼。 – dropsOfJupiter 2011-06-06 01:08:45