작성한 질문수
[2024 최신] [코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
해결된 질문
작성
·
198
1
Slider를 _SliderBottom로 분리할때 (15:09정도) VideoPlayerController를 바로 주입하지 않고 maxPosition과 OnSliderChanged로 값을 넣고 있는데,
VideoPlayerController를 주입하면 안되나요??
답변 1
0
바로라면 어떻게 말씀이실까요? 예제한번 보여주세요!
class _Slider extends StatelessWidget { final Duration currentPosition; final VideoPlayerController videoController; // final Duration maxPosition; // final ValueChanged<double> onSliderChanged; const _Slider({Key? key, required this.currentPosition, required this.videoController,}) : super(key: key); @override Widget build(BuildContext context) { return Positioned( bottom: 0, right: 0, left: 0, child: Padding( padding: const EdgeInsets.symmetric(horizontal: 8.0), child: Row( children: [ Text( '${currentPosition.inMinutes}:${(currentPosition.inSeconds % 60) .toString() .padLeft(2, '0')}', style: const TextStyle( color: Colors.white, ), ), Expanded( child: Slider( value: currentPosition.inSeconds.toDouble(), onChanged: (double value) { videoController.seekTo(Duration(seconds: value. toInt()));}, max: videoController.value.duration.inSeconds.toDouble(), min: 0, ), ), Text( '${videoController.value.duration.inMinutes}:${(videoController.value.duration.inSeconds % 60) .toString() .padLeft(2, '0')}', style: const TextStyle( color: Colors.white, ), ), ], ), ), ); } }
이렇게요! 이렇게 해도 동작은 잘 되는 것 같았어요.
아~ 그렇게하셔도 문제는 없습니다!
정리의 차이정도라고 생각하시면 될 것 같습니다.
저같은경우 build 함수안에 함수 로직이 더 들어가는걸 별로 좋아하지 않는 스타일입니다!
하지만 이건 개개인의 취향같네요.
그래도 로직이 길어지면 가독성이 안좋아지니 따로 새 함수로 빼는걸 추천드립니다~
혹시 컨트롤러의 다른 특성이 있는건지 궁금했어요! 답변 감사합니다~