我的SeekBar和拇指后面有一个随机的阴影,原因有些奇怪(黑暗而不是黑色部分)。我该如何摆脱它?
我的SeekBar:
<SeekBar android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/slider"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:max="10"
android:thumb="@drawable/thumb"
android:progressDrawable="@drawable/progress_appearance"/>
thumb.xml
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#ffffffff"
android:endColor="#ffffffff"/>
<size android:height="20dp" android:width="20dp"/>
</shape>
progress_appearance.xml(有一些奇怪的渐变,我还没有被删除)
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:paddingTop="3px"
android:paddingBottom="3px">
<shape>
<corners android:radius="100dip" />
<gradient
android:startColor="#000"
android:centerColor="#000"
android:endColor="#000"
android:centerY="0.2"
android:angle="270"/>
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="0dip" />
<gradient
android:startColor="#000"
android:centerColor="#000"
android:endColor="#000"/>
</shape>
</clip>
</item>
</layer-list>
答案 0 :(得分:7)
试试这个:
<SeekBar android:layout_width="fill_parent"
android:layout_height="wrap_content"
/////
android:background="@null"
/////
android:id="@+id/slider"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:max="10"
android:thumb="@drawable/thumb"
android:progressDrawable="@drawable/progress_appearance"/>
答案 1 :(得分:1)
我使用了这段代码:
<SeekBar
android:id="@+id/seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="100"
android:background="@null"
android:padding="0dp"
android:progressDrawable="@drawable/progress_seekbar"
android:thumb="@android:color/transparent" />
它对我有用。
答案 2 :(得分:1)
在搜索栏中添加此属性
android:splitTrack="false"
答案 3 :(得分:0)
我遇到了类似的问题
经过一番挣扎之后,我发现阴影没有出现背后它的情况。
所以我最后在FrameLayout
后面放了一个白色的SeekBar
。
这是我的代码。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Putting this FrameLayout, I could remove the shadow. -->
<FrameLayout
android:background="@android:color/white"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="70dp">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Thumbnail frames you see above -->
<ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
...
</LinearLayout>
<!-- The SeekBar -->
<SeekBar
android:padding="0dp"
android:layout_width="match_parent"
android:layout_height="match_parent" />
...
这很奇怪,因为我没有把任何前面的阴影放在背后阴影。
我认为这是Android的错误。
我希望它可以帮助你:)