2011-03-15 173 views
4

如果有人知道我在做什麼錯誤,請讓我知道。 我創建了一個android應用程序,我試圖將seekbar的默認顏色從黃色更改爲任何其他顏色。我創建了一個位於所有3個drawable中的xml文件並運行該項目,但seekbar的顏色仍然不會改變顏色。 下面是代碼我和一個來自irc的同伴一直在努力。更改默認的seekbar顏色

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

<item android:id="@android:id/background"> 
    <shape> 
     <corners android:radius="5dip" /> 
     <gradient 
       android:startColor="#ff9d9e9d" 
       android:centerColor="#ff5a5d5a" 
       android:centerY="0.75" 
       android:endColor="#ff747674" 
       android:angle="270" 
     /> 
    </shape> 
</item> 

<item android:id="@android:id/secondaryProgress"> 
    <clip> 
     <shape> 
      <corners android:radius="5dip" /> 
      <gradient 
        android:startColor="#80ffd300" 
        android:centerColor="#80ffb600" 
        android:centerY="0.75" 
        android:endColor="#a0ffcb00" 
        android:angle="270" 
      /> 
     </shape> 
    </clip> 
</item> 
<item 
    android:id="@android:id/progress" 
> 
    <clip> 
     <shape> 
      <corners 
       android:radius="5dip" /> 
      <gradient 
       android:startColor="#FF0000" 
       android:centerColor="#FF0000" 
       android:centerY="0.75" 
       android:endColor="#FF0000" 
       android:angle="270" /> 
     </shape> 
    </clip> 
</item> 

</layer-list> 

這是我的Java代碼

SeekBar seekBar = (SeekBar)findViewById(R.id.seekbar); 
     final TextView seekBarValue = (TextView) findViewById(R.id.seekbarvalue);  //filling seekbar 
     seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() 
     { 
      @Override 
      public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) 
      { 

       seekBarValue.setText(String.valueOf(progress+1998)); //sets the date to seekBar when in motion 
      } 
      @Override 
      public void onStartTrackingTouch(SeekBar seekBar) 
      { 
       //TO DO Auto-Generated Method stub 
      } 
      @Override 
      public void onStopTrackingTouch(SeekBar seekBar) 
      { 
       //TO DO Auto-Generated Method stub 
      } 
+0

這不顯示使用XML的位置。請在線程中發佈相關代碼 – Blundell 2011-03-15 16:12:42

+1

請編輯您的問題(不要開始第三個問題),並顯示您使用此drawable來自定義您的「SeekBar」。 – CommonsWare 2011-03-15 17:38:52

+0

[更改黃色默認seekbar顏色]的可能的重複。(http://stackoverflow.com/questions/5315641/changing-yellow-default-seekbar-color) – msarchet 2011-03-15 18:00:46

回答

4

好了,所以基本上所有我需要做的是進入我的main.xml文件不位於繪項目文件夾中的一個,然後確保把

android:progressDrawable="@drawable/myprogress" 

其中myprogress是位於drawables文件夾中的.xml文件的名稱。