Seekbar OnProgressChanged не срабатывает при перемещении вручную

У меня есть приложение, которое должно делать некоторые вещи, когда панель поиска перемещается (вручную). Тем не менее, onProgressChanged никогда не выполняется, хотя я убедился, что значение прогресса изменяется при перемещении бара.

onStartTrackingTouch и onStopTrackingTouch оба увольняются без проблем.

public class MainActivity extends ActionBarActivity implements OnSeekBarChangeListener{

...

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    SeekBar seekBar = (SeekBar) findViewById(R.id.seekBar1);

    seekBar.setOnSeekBarChangeListener(this);


}

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



}

1 ответ

У меня похожая проблема, onProgressChanged() не уволен, но onStartTrackingTouch() а также onStopTrackingTouch() нет такой проблемы

В моем случае пользователь не может перетаскивать панель поиска после повторного входа на страницу активности, это происходит случайным образом.

Это из-за mediaControl.seek() код внутри onProgressChanged() застрял. Я исправил это, чтобы убедиться, что назначенный объект mediaControl является самым последним с допустимой продолжительностью (т.е. mediaControl.getDuration()"s onSucces()! = 0L).

Так что если у вас есть похожая проблема, пожалуйста, сначала проверьте ваш объект внутри onProgressChanged()Возможно, что-то не так с этим объектом.

Другие вопросы по тегам