25

奇妙な問題に遭遇しました.カスタム サムでシークバーを実装しました..そして、HTC Desire でアプリを実行すると、すべて正常に動作します..しかし、Samsung Galaxy で実行すると、サムがクリップされます!

ここにスクリーンショットがあります..

欲望:

欲望のシークバー

サムスンのギャラクシー:

ギャラクシー シークバー

私はどんな考えにも感謝します..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>

シークバー 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"/>
4

3 に答える 3

37

android:paddingLeftandroid:paddingRightおよびandroid:thumbOffsetのプロパティを調整して、SeekBar目的の結果を達成します。

左右のパディングは、親指の幅の半分にする必要があります。

于 2011-06-30T05:42:53.327 に答える
12
<SeekBar
    ...
    android:paddingLeft="5dp"  
    android:paddingRight="5dp"
    android:thumbOffset="0px" />

それは私のために働いた。

于 2012-05-01T13:33:57.563 に答える