Android 单击seekBar时,seekBar拇指会拉伸

Android 单击seekBar时,seekBar拇指会拉伸,android,seekbar,Android,Seekbar,我遇到了一个奇怪的问题。在我的应用程序中,我有一个自定义的SeekBar,拇指有两种状态。当我点击seekBar时,它的拇指会变形,几秒钟后会恢复正常状态。相应的MediaPlayer对象会像预期的那样立即做出反应,这只是一个视觉问题。要说明这一点,请使用快照: 正常行为: 单击seekBar时: 我不知道这有什么不对 希克巴: <SeekBar android:id="@+id/seekBarMain" android:layout_widt

我遇到了一个奇怪的问题。在我的应用程序中,我有一个自定义的
SeekBar
,拇指有两种状态。当我点击
seekBar
时,它的拇指会变形,几秒钟后会恢复正常状态。相应的
MediaPlayer
对象会像预期的那样立即做出反应,这只是一个视觉问题。要说明这一点,请使用快照:

正常行为:

单击
seekBar
时:

我不知道这有什么不对

希克巴:

     <SeekBar
        android:id="@+id/seekBarMain"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_gravity="bottom"
        android:layout_marginBottom="5dp"
        android:indeterminate="false"
        android:maxHeight="3dp"
        android:maxWidth="450dp"
        android:minHeight="3dp"
        android:paddingLeft="9dp"
        android:paddingRight="9dp"
        android:progressDrawable="@drawable/pb"
        android:thumb="@drawable/thumb_state" />

知道为什么会发生这种情况吗?

好吧,我刚刚发现这个问题与
的“拇指按下”
可拖动装置有关,它比正常状态下使用的可拖动装置大25%。我真的无法解释,但是修改
“thumb\u pressed”
drawable与
“thumb”
drawable的大小相同,解决了这个问题

我喜欢这种风格。你介意分享吗?@SiKni8当然。我已经压缩了相关的资源,你可以在这里下载(链接将持续5天)如果我忘记了什么,请告诉我。。。谢谢:)我真的很感激。
      <?xml version="1.0" encoding="utf-8"?>
       <selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/thumb_pressed" android:state_enabled="true" android:state_pressed="true"/>
<item android:drawable="@drawable/thumb" android:state_pressed="false"/>

      </selector>
        @Override
public boolean onTouch(View v, MotionEvent event) {

    if (v.getId() == R.id.seekBarMain) {

        if (mp.isPlaying()) {

            int playPositionInMillisecconds = (mediaFileLengthInMilliseconds / 100)
                    * sb.getProgress();
            mp.seekTo(playPositionInMillisecconds);
        } else {
            int playPositionInMillisecconds = (mediaFileLengthInMilliseconds / 100)
                    * sb.getProgress();
            mp.start();
            mp.seekTo(playPositionInMillisecconds);
            btnPlay.setBackgroundResource(R.drawable.button_pause);
            primarySeekBarProgressUpdater();

        }
    }

    return false;

}