#flutter #dart
Вопрос:
Итак, у меня есть просмотр страниц.конструктор виджета видеокарты. сначала я вызываю api, и в ответе будут URL-адреса 5 видео(с разбивкой по страницам), когда я прокручиваю еще 5. это код для просмотра страницы
StreamBuilder<ApiResponse<List<VideoData>>>(
stream: feedVideoBloc.videosResponseStream,
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
return Center(
child: SpinKitThreeBounce(
color: Colors.pinkAccent,
size: 30,
),
);
} else if (snapshot.data!.data!.isEmpty) {
return Center(
child: Text('No Videos'),
);
} else {
return Stack(
children: [
Container(
color: Colors.black,
child: PreloadPageView.builder(
itemCount: snapshot.data?.data?.length,
onPageChanged: (index) {
userSwiped ;
if (userSwiped == 4) {
userSwiped = 0;
_showInterstitialAdSwipe();
}
feedPageIndex = index;
print(feedPageIndex);
if (index == snapshot.data!.data!.length - 2) {
feedVideoBloc.getAllVideos();
}
},
pageSnapping: true,
controller: pageViewVideoController,
physics: BouncingScrollPhysics(),
scrollDirection: Axis.vertical,
preloadPagesCount: 1,
itemBuilder: (BuildContext context, int index) {
if (snapshot.connectionState ==
ConnectionState.waiting) {
return CircularProgressIndicator();
}
if (snapshot.data!.status == Status.LOADING) {}
if (snapshot.data!.status == Status.HAS_DATA) {
return VideoCard(
followUser: (bool current) {
feedVideoBloc.followUser(
snapshot.data!.data![index].user!.id!,
userModel.token!,
current,
index);
},
likeVideo: (bool current) {
feedVideoBloc.postVideoLike(
snapshot.data!.data![index].id!,
userModel.token!,
current,
index);
},
callback: (String url) {
_showInterstitialAdDownload(index, url);
},
key: Key("unique key $index"),
index: index,
videoData: snapshot.data!.data![index],
);
}
return CircularProgressIndicator();
},
),
),
Visibility(
visible: snapshot.data!.showPaginationLoader amp;amp;
feedPageIndex == snapshot.data!.data!.length - 1,
child: Center(
child: SpinKitThreeBounce(
color: Colors.pinkAccent,
size: 30,
)),
),
],
);
}
}),
Проблема в том, что каждый раз, когда я прокручиваю страницу, видео на видеокарте занимает слишком много времени, результат-пустой экран по крайней мере за 2-3 секунды до начала видео
.Как лучше реализовать короткое видео, например, прокрутку.