Android搜索栏剪了拇指

时间:2011-06-27 10:02:23

标签: android seekbar clipped

我遇到了一些奇怪的问题..我用自定义拇指实现了一个搜索栏。当我在HTC Desire上运行我的应用程序时,一切正常。但是,当我在三星Galaxy上运行时,拇指被剪掉了!

以下是截图..

欲望:

Desire seekbar

三星Galaxy:

Galaxy seekbar

我会很感激任何想法..tnx

myprogress.xml:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:id="@android:id/background">
    <shape>
        <corners
            android:radius="10dp" />
        <gradient
                android:startColor="@color/gray"
                android:centerColor="@color/gray"
                android:centerY="0.75"
                android:endColor="@color/gray"
                android:angle="270"
        />
    </shape>
</item>

<item android:id="@android:id/secondaryProgress">
    <clip>
        <shape>
        <corners
            android:radius="10dp" />
            <gradient
                    android:startColor="@color/white"
                    android:centerColor="@color/white"
                    android:centerY="0.75"
                    android:endColor="@color/white"
                    android:angle="270"
            />
        </shape>
    </clip>
</item>

<item android:id="@android:id/progress">
    <clip>
        <shape>
        <corners
            android:radius="10dp" />
            <gradient
                android:startColor="#FFA500"
                android:centerColor="@color/yellow"
                android:centerY="0.75"
                android:endColor="@color/yellow"
                android:angle="270"
            />
        </shape>
    </clip>
</item>

式:

<style name="mySeekBar">
    <item name="android:indeterminateOnly">false</item>
    <item name="android:progressDrawable">@drawable/myprogress</item>
    <item name="android:indeterminateDrawable">@android:drawable/progress_horizontal</item>
    <item name="android:minHeight">10dip</item>
    <item name="android:maxHeight">10dip</item>
    <item name="android:thumb">@drawable/thumb</item>
    <item name="android:thumbOffset">4dp</item>
    <item name="android:focusable">true</item>

seekbar xml:

<SeekBar android:id="@+id/player_seek_horizontal"
        android:layout_gravity="center_vertical" 
        android:max="100" 
        android:layout_marginLeft="50dp" 
        android:layout_width="180dp" 
        android:thumb="@drawable/thumb" 
        android:layout_height="wrap_content" 
        style="@style/mySeekBar" 
        android:background="@drawable/background_transparent_rounded" 
        android:paddingRight="4dp" android:paddingLeft="4dp"/>

3 个答案:

答案 0 :(得分:36)

调整android:paddingLeft的{​​{1}},android:paddingRightandroid:thumbOffset属性以获得所需的结果。

左右填充应该是拇指宽度的一半。

答案 1 :(得分:8)

<SeekBar
    ...
    android:paddingLeft="5dp"  
    android:paddingRight="5dp"
    android:thumbOffset="0px" />

它对我有用。

答案 2 :(得分:3)

将以下属性添加到父布局

android:clipChildren="false"
android:clipToPadding="false"