#flutter #flutter-dependencies
#флаттер #флаттер-зависимости
Вопрос:
Я использую этот код, чтобы добавить фоновое полноэкранное видео в свое приложение, оно хорошо работает на виртуальном устройстве, но не очень хорошо на физических устройствах!
new Flex(direction: Axis.vertical, children: <Widget>[
FittedBox(
fit: BoxFit.fill,
child: SizedBox(
width: controller.value.size?.width ?? 0,
height: controller.value.size?.height ?? 0,
child: VideoPlayer(controller)),
),
]),
Комментарии:
1. не могли бы вы отредактировать свой ответ и включить изображение, поскольку, похоже, оно было вставлено в часть кода?
Ответ №1:
У меня это работает
SizedBox.expand(
child: FittedBox(
fit: BoxFit.cover,
child: SizedBox(
width: videoController.value.size?.width ?? 0,
height: videoController.value.size?.height ?? 0,
child: VisibilityDetector(
key: ObjectKey(videoController),
onVisibilityChanged: (visibility) {
if (visibility.visibleFraction == 0 amp;amp; this.mounted) {
videoController.pause();
} else if (visibility.visibleFraction == 1) {
videoController.play();
}
},
child: VideoPlayer(videoController)),
)),
),
Комментарии:
1. Я не смог найти виджет ‘VisibilityDetector’, а SDK его не обнаруживает! Кроме того, я не вижу этого в библиотеке виджетов flutter.
2. Извините, вы можете найти VisibilityDetector здесь pub.dev/packages/visibility_detector , если вы хотите использовать else simple, пропустите это.