#flutter #flutter-dependencies
#flutter #flutter-зависимости
Вопрос:
Я хотел знать, как добавить функцию отключения звука при зацикленном видео, не приостанавливая его.
в заданном состоянии у меня есть
setState(() {});
controller.setLooping(true);
controller.play();
controller.setVolume(0);
});
и на детекторе жестов видео я поставил это:
GestureDetector(
onTap: () {
setState(() {
if (controller.value.isPlaying) {
controller.pause();
controller.setVolume(0);
} else {
controller.play();
controller.setVolume(1);
}
});
},
но если я сниму
controller.play();
controller.pause();
не распознает функцию
controller.setVolume(1);
controller.setVolume(0);
в этот момент видео находится в цикле, и при прикосновении оно приостанавливается, а при втором прикосновении начинается со звука.
Как я могу сделать так, чтобы видео никогда не ставилось на паузу? и всегда оставаться в цикле?
Ответ №1:
Попробуйте это —
GestureDetector(
onTap: () {
if (_controller.value.volume == 0) {//check if volume is already set to 0 (i.e mute)
_controller.setVolume(1.0);
} else {
//check if volume is already set to 1 (i.e unmute)
_controller.setVolume(0.0);
}
setState(() {});
},
)