我想更改自定义垂直搜索栏How can I get a working vertical SeekBar in Android?的进步色彩的工作,如果我在一个View.OnTouchListener把这个代码,它工作正常:方法来改变在Android定制的垂直搜索条的进步色彩,而不是从一个线程
VerticalSeekBar verticalSeekBar1 = (VerticalSeekBar)verticalSeekBar;
Rect bounds = verticalSeekBar1.getProgressDrawable().getBounds();
int progr = verticalSeekBar1.getProgress();
int max = verticalSeekBar1.getMax();
int width = verticalSeekBar1.getWidth();
int height = verticalSeekBar1.getHeight();
prDr = verticalSeekBar1.getProgressDrawable();
verticalSeekBar1.setProgressDrawable(r.getDrawable(R.drawable.myprogress));
verticalSeekBar1.getProgressDrawable().setBounds(bounds);
verticalSeekBar1.setMax(max);
verticalSeekBar1.setProgress(1);
verticalSeekBar1.setProgress(progr);
verticalSeekBar1.onSizeChanged(width, height);
verticalSeekBar1.refreshDrawableState();
但是,如果我把另一个线程它的工作原理部分,因为搜索条的拇指不会转到正确的位置相同的代码,而是下降,但进步的色彩效果很好,并得到最后一个位置。 我觉得onSizeChanged方法可能会导致这种情况。我调试它,并发现,在这两种情况下onSizeChanged方法有适当的参数,但在从线程代码,它不更新搜索条。
我已经尝试过这种代码移动到用户界面的线程,但也不管用。