首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >seekBar拇指在单击seekBar时被拉伸

seekBar拇指在单击seekBar时被拉伸
EN

Stack Overflow用户
提问于 2013-03-22 14:10:59
回答 1查看 1.6K关注 0票数 2

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

正常行为:

单击seekBar时:

我不知道那是怎么回事。

SeekBar:

代码语言:javascript
复制
     <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" />

可拉用于拇指的:

代码语言:javascript
复制
      <?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>

OnTouchListener:

代码语言:javascript
复制
        @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;

}

知道为什么会这样吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-22 16:10:50

好的,我刚刚发现这个问题与"thumb_pressed"绘图有某种关系,它比用于正常状态的可绘图要大25%。我无法真正解释这一点,但是修改"thumb_pressed"绘图使其具有与"thumb"绘图相同的大小解决了这个问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15572424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档