4

如果有人知道我做错了什么,请告诉我。我创建了一个 android 应用程序,我正在尝试将搜索栏的默认颜色从黄色更改为任何其他颜色。我创建了一个位于所有 3 个可绘制对象中的 xml 文件并运行了项目,但搜索栏的颜色仍然没有改变颜色。下面是我和 irc 的一位同事一直在编写的代码。

    <?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
            }
4

1 回答 1

4

好的,所以基本上我需要做的就是进入我的 main.xml 文件,而不是位于 drawables 文件夹中的文件,然后确保将

android:progressDrawable="@drawable/myprogress"

其中 myprogress 是位于 drawables 文件夹中的 .xml 文件的名称。

于 2011-03-15T19:18:13.127 回答