import 'package:flutter/widgets.dart'; import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; import 'package:pixes/components/illust_widget.dart'; import 'package:pixes/components/loading.dart'; import 'package:pixes/network/network.dart'; import 'package:pixes/network/res.dart'; class RecommendationPage extends StatefulWidget { const RecommendationPage({super.key}); @override State createState() => _RecommendationPageState(); } class _RecommendationPageState extends MultiPageLoadingState { @override Widget buildContent(BuildContext context, final List data) { return LayoutBuilder(builder: (context, constrains){ return MasonryGridView.builder( gridDelegate: const SliverSimpleGridDelegateWithMaxCrossAxisExtent( maxCrossAxisExtent: 240, ), itemCount: data.length, itemBuilder: (context, index) { if(index == data.length - 1){ nextPage(); } return IllustWidget(data[index]); }, ); }); } @override Future>> loadData(page) { return Network().getRecommendedIllusts(); } }