Как изменить цвет прогресса в строке поиска в соответствии с ее прогрессом? - PullRequest
5 голосов
/ 23 декабря 2011

Я хочу создать пользовательскую панель поиска, цвет индикатора выполнения которой изменяется с красного на синий, когда пользователь меняет ход выполнения панели.

Я пробовал, но менял цвет фона, а не индикатор выполнения.

seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

            public void onStopTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub

            }

            public void onStartTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub

            }

            public void onProgressChanged(SeekBar seekBar, int progress,
                    boolean fromUser) {


                seekBar.setBackgroundColor(Color.RED + progress);

            }
        });

Ответы [ 2 ]

7 голосов
/ 06 октября 2015

Есть много способов сделать это, я расскажу простой способ. Вы можете установить цвет progressBackground следующим образом:

seekBar.getProgressDrawable().setColorFilter("<Color you wish>", PorterDuff.Mode.MULTIPLY);

Если ваш уровень API 21, вы можете использовать getProgressBackgroundTintList или getProgressBackgroundTintMode ().

3 голосов
/ 23 декабря 2011

используйте настраиваемую панель поиска для этого требования, см. Следующую ссылку

  1. http://www.mokasocial.com/2011/02/create-a-custom-styled-ui-slider-seekbar-in-android/

  2. Панель поиска, изменение цвета пути с желтого на белый

...