Advertisement
rifki_cs29

News Category Page

Sep 24th, 2021
1,135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Dart 1.60 KB | None | 0 0
  1. part of 'pages.dart';
  2.  
  3. class NewsCategoryPage extends StatefulWidget {
  4.   final String category;
  5.   NewsCategoryPage({required this.category});
  6.  
  7.   @override
  8.   _NewsCategoryPageState createState() => _NewsCategoryPageState();
  9. }
  10.  
  11. class _NewsCategoryPageState extends State<NewsCategoryPage> {
  12.   @override
  13.   void initState() {
  14.     super.initState();
  15.   }
  16.  
  17.   @override
  18.   Widget build(BuildContext context) {
  19.     return Scaffold(
  20.       appBar: AppBar(
  21.         title: Text(widget.category),
  22.       ),
  23.       body: GetBuilder<ArticleCategoryController>(
  24.         initState: (_) => ArticleCategoryController(category: widget.category),
  25.         builder: (state) {      
  26.         print(widget.category);
  27.          if(state.state == ResultState.Loading && state.articleResult == null) {
  28.             return Center(child: loadingIndicator);        
  29.           } else if(state.state == ResultState.HasData || state.articleResult != null) {
  30.             return ListView.builder(
  31.               shrinkWrap: true,
  32.               itemCount: state.articleResult?.articles.length,
  33.               itemBuilder: (context, index) {
  34.                 var article = state.articleResult?.articles[index];
  35.                 return ArticleCard(article: article!);              
  36.               }
  37.             );
  38.           } else if(state.state == ResultState.NoData) {
  39.             return Center(child: Text(state.message));
  40.           } else if (state.state == ResultState.Error) {
  41.             return Center(child: Text(state.message));
  42.           } else {
  43.             return Center(child: Text(''));
  44.           }
  45.         }
  46.       )
  47.     );
  48.   }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement