Flutter Tutorial - Extracting Widgets

Merhaba arkadaşlar, bu yazımda sizlere Flutter ile tasarladığımız Card widget'ını dart dosyasına çıkarmaktan bahsedeceğim...

main.dart

import 'package:flutter/material.dart'; import 'quote.dart'; import 'quote_card.dart'; void main() => runApp(MaterialApp( home: QuoteList(), )); class QuoteList extends StatefulWidget { @override _QuoteListState createState() => _QuoteListState(); } class _QuoteListState extends State { List quotes = [ Quote(text:'Şikayet ettiğiniz yaşam, belki de başkasının hayalidir.', author: "Birinci"), Quote(text:'Hiçbir zafere çiçekli yollardan gidilmez.', author: "İkinci"), Quote(text:'Alışkanlıklar bırakılmazsa zamanla ihtiyaç halini alırlar.', author: "Üçüncü") ]; @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.grey[200], appBar: AppBar( title: Text("Awesome Quotes"), centerTitle: true, backgroundColor: Colors.redAccent, ), body: Column( children: quotes.map((quote) { return QuoteCard(quote: quote); }).toList(), //children: quotes.map((quote) => QuoteCard(quote: quote)).toList(), ), ); } }

quote_card.dart

import 'package:flutter/material.dart'; import 'quote.dart'; class QuoteCard extends StatelessWidget { final Quote quote; QuoteCard({this.quote}); @override Widget build(BuildContext context) { return Card( margin: EdgeInsets.fromLTRB(16.0,16.0,16.0,0.0), child: Padding( padding: const EdgeInsets.all(12.0), child: Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ Text( quote.text, style: TextStyle( fontSize: 18.0, color: Colors.grey[600], ), ), SizedBox(height: 6.0), Text( quote.author, style: TextStyle( fontSize: 14.0, color: Colors.grey[800], ), ), ], ), ), ); } }

quote.dart

class Quote { String text; String author; /*Quote(String text, String author){ this.text = text; this.author = author; }*/ /*Quote({String text, String author}){ this.text = text; this.author = author; }*/ Quote({this.text, this.author}); } //Quote myQuote = Quote("Text","Author"); //Quote myQuote = Quote(text: "Text", author: "Author"); //Quote myQuote = Quote(author: "Author", text: "Text");

Yorum Gönder

Daha yeni Daha eski