Как удалить выбранное видео с экрана кнопкой Flutter? - PullRequest
0 голосов
/ 09 марта 2020

Я хочу удалить выбранное видео с экрана, я пробовал разные способы, но не смог получить его, вот код:

есть кнопка на видеокадре, поэтому, когда я нажимаю, я хочу удалить с экрана

if (_video != null) {
  _videoPlayerController.value.initialized
    ? Expanded(
        child: Stack(
          children: <Widget>[
            Container(
              height: 45,
              width: 47,
              child: AspectRatio(
                aspectRatio:
                  _videoPlayerController
                      .value
                      .aspectRatio,
                child: VideoPlayer(
                  _videoPlayerController
                ),
              ),
            ),
            Positioned(
              top: -15,
              right: -15,
              child: ClipRRect(
                borderRadius:
                  BorderRadius.circular(16.0),
                child: IconButton(
                  hoverColor: Colors.red,
                  icon: Icon(
                    Icons.delete,
                    color: Colors.red,
                    size: 23,
                  ),
                  onPressed: () => _removeVideo
                ),
              ),
            ),
          ],
        ),
      )
    : Container()
} else {
  Text(" ",
    style: TextStyle(fontSize: 18.0),
  ),
}


_pickVideo() async {
  File video = await ImagePicker.pickVideo(source: ImageSource.gallery);
  _video = video;
  _videoPlayerController = VideoPlayerController.file(_video)
    ..initialize().then((_) {
      setState(() {});
// _videoPlayerController.play();
    });
  }

это то, что я пробовал, я создал функцию, но она не работает

void _removeVideo() {
  _video.remove(_video);
  setState(() {
    _video = _video;
  });
}

1 Ответ

0 голосов
/ 09 марта 2020

Исходя из вашего кода, вам нужно только сделать следующее:

void _removeVideo() {
  setState(() {
    _video = null;
  });
}
...