sanca

flutter_navigator2

Sep 25th, 2020 (edited)
868
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import 'package:flutter/material.dart';
  2. import 'package:sanca_news/single_article.dart';
  3.  
  4. void main() {
  5.   runApp(MyApp());
  6. }
  7.  
  8. class MyApp extends StatefulWidget {
  9.   @override
  10.   _MyAppState createState() => _MyAppState();
  11. }
  12.  
  13. class _MyAppState extends State<MyApp> {
  14.   String text =
  15.       "Ini text beritanya Ini text beritanya Ini text beritanya Ini text ...";
  16.  
  17.   @override
  18.   Widget build(BuildContext context) {
  19.     return MaterialApp(
  20.       home: Scaffold(
  21.           // backgroundColor: Colors.green,
  22.           appBar: AppBar(
  23.         ...
  24.         ...
  25.           ),
  26.           body: Padding(
  27.             padding: const EdgeInsets.all(10.0),
  28.             child: ListView(
  29.               children: <Widget>[
  30.                 // card for newest articles
  31.                 Card(
  32.             ...
  33.             ...
  34.                 ),
  35.  
  36.                
  37.                 Container(
  38.                   margin: EdgeInsets.only(top: 20, bottom: 20),
  39.                   child: Row(
  40.                     children: [
  41.                       Flexible(
  42.                           flex: 1,
  43.                           child: Card(
  44.                             shape: RoundedRectangleBorder(
  45.                                 borderRadius: BorderRadius.circular(10)),
  46.                             elevation: 5,
  47.                             child: Column(
  48.                               crossAxisAlignment: CrossAxisAlignment.start,
  49.                               children: [
  50.                                 Container(
  51.                     ...
  52.                     ...
  53.                                 ),
  54.                                 Container(
  55.                                   margin: EdgeInsets.only(
  56.                                       bottom: 5, left: 10, right: 10),
  57.                                   child: GestureDetector(
  58.                                     onTap: () {
  59.                                       Navigator.push(
  60.                                           context,
  61.                                           MaterialPageRoute(
  62.                                               builder: (context) =>
  63.                                                   SingleArticle()));
  64.                                     },
  65.                                     child: Text(
  66.                                       "Ini text beritanya aja lagi ya",
  67.                                       maxLines: 2,
  68.                                       textAlign: TextAlign.center,
  69.                                       overflow: TextOverflow.ellipsis,
  70.                                       style: TextStyle(
  71.                                         fontSize: 14,
  72.                                         fontStyle: FontStyle.italic,
  73.                                         fontFamily: "Poppins",
  74.                                         fontWeight: FontWeight.w700,
  75.                                       ),
  76.                                     ),
  77.                                   ),
  78.                                 )
  79.                               ],
  80.                             ),
  81.                           )),
  82.                       Flexible(
  83.                           flex: 1,
  84.                           child: Card(
  85.                             shape: RoundedRectangleBorder(
  86.                                 borderRadius: BorderRadius.circular(10)),
  87.                             elevation: 5,
  88.                             child: Column(
  89.                               crossAxisAlignment: CrossAxisAlignment.start,
  90.                               children: [
  91.                                 Container(
  92.                                   margin: EdgeInsets.only(bottom: 5),
  93.                                   height: 150,
  94.                                   decoration: BoxDecoration(
  95.                                       image: DecorationImage(
  96.                                           image: AssetImage(
  97.                                               "assets/images/content.png"),
  98.                                           fit: BoxFit.cover),
  99.                                       borderRadius: BorderRadius.only(
  100.                                           topLeft: Radius.circular(10),
  101.                                           topRight: Radius.circular(10))),
  102.                                 ),
  103.                                 Container(
  104.                                     margin: EdgeInsets.only(
  105.                                         bottom: 5, left: 10, right: 10),
  106.                                     child: Text(
  107.                                       "Ini Text Beritanya Aja Lagi Ya",
  108.                                       textAlign: TextAlign.center,
  109.                                       maxLines: 2,
  110.                                       overflow: TextOverflow.ellipsis,
  111.                                       style: TextStyle(
  112.                                         fontSize: 14,
  113.                                         fontStyle: FontStyle.italic,
  114.                                         fontFamily: "Poppins",
  115.                                         fontWeight: FontWeight.w700,
  116.                                       ),
  117.                                     ))
  118.                               ],
  119.                             ),
  120.                           )),
  121.                     ],
  122.                   ),
  123.                 ),
  124.  
  125.                 BuildCard(text),
  126.                 BuildCard(text),
  127.                 BuildCard(text),
  128.                 BuildCard(text),
  129.                 BuildCard(text),
  130.               ],
  131.             ),
  132.           )),
  133.     );
  134.   }
  135. }
  136.  
  137. class BuildCard extends StatelessWidget {
  138.   final String text;
  139.   BuildCard(this.text);
  140.   @override
  141.   Widget build(BuildContext context) {
  142.     return Card(
  143.       shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(10)),
  144.       elevation: 5,
  145.       child: Row(
  146.         mainAxisAlignment: MainAxisAlignment.spaceAround,
  147.         children: [
  148.           Flexible(
  149.               flex: 2,
  150.               child: Container(
  151.                   margin: EdgeInsets.all(5),
  152.                   child: Column(
  153.                     crossAxisAlignment: CrossAxisAlignment.start,
  154.                     children: [
  155.                       GestureDetector(
  156.                         onTap: () {
  157.                           Navigator.push(
  158.                               context,
  159.                               MaterialPageRoute(
  160.                                   builder: (BuildContext context) =>
  161.                                       SingleArticle()));
  162.                         },
  163.                         child: Text(
  164.                           text,
  165.                           style: TextStyle(
  166.                               fontSize: 12,
  167.                               fontWeight: FontWeight.w700,
  168.                               fontFamily: "Poppins"),
  169.                         ),
  170.                       ),
  171.                       Container(
  172.                         margin: EdgeInsets.only(top: 5),
  173.                         child: RaisedButton(
  174.                           onPressed: () {
  175.                             Navigator.push(
  176.                                 context,
  177.                                 MaterialPageRoute(
  178.                                     builder: (BuildContext context) =>
  179.                                         SingleArticle()));
  180.                           },
  181.                           child: Text(
  182.                             "Read more ...",
  183.                             style: TextStyle(fontFamily: "Poppins"),
  184.                           ),
  185.                         ),
  186.                       )
  187.                     ],
  188.                   ))),
  189.           Flexible(
  190.               flex: 1,
  191.               child: Container(
  192.                 margin: EdgeInsets.all(5),
  193.                 height: 100,
  194.                 width: 100,
  195.                 decoration: BoxDecoration(
  196.                     image: DecorationImage(
  197.                         image: AssetImage("assets/images/content.png"),
  198.                         fit: BoxFit.cover),
  199.                     borderRadius: BorderRadius.circular(12)),
  200.               )),
  201.         ],
  202.       ),
  203.     );
  204.   }
  205. }
  206.  
RAW Paste Data