
google_fonts | Flutter package
A Flutter package to use fonts from fonts.google.com. Supports HTTP fetching, caching, and asset bundling.
만들면서 배우는 플러터 앱 프로그래밍 7가지 모바일 앱 UI 제작 & RiverPod 상태 관리
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Placeholder(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Placeholder(),
);
}
}
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
actions: [
Icon(Icons.search),
Icon(CupertinoIcons.heart)],
),
body: Placeholder(),
);
}
}
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
actions: [
Icon(Icons.search),
SizedBox(width: 16),
Icon(CupertinoIcons.heart),
SizedBox(width: 16),
],
),
body: Placeholder(),
);
}
}
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: Placeholder(),
);
}
AppBar _appBar() {
return AppBar(
actions: [
Icon(Icons.search),
SizedBox(width: 16),
Icon(CupertinoIcons.heart),
SizedBox(width: 16),
],
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Container(
child: Column(
children: [
Icon(Icons.food_bank),
Text("ALL"),
],
),
),
],
),
);
}
ListView(
padding: const EdgeInsets.all(8),
children: <Widget>[
Container(
height: 50,
color: Colors.amber[600],
child: const Center(child: Text('Entry A')),
),
Container(
height: 50,
color: Colors.amber[500],
child: const Center(child: Text('Entry B')),
),
Container(
height: 50,
color: Colors.amber[100],
child: const Center(child: Text('Entry C')),
),
],
)
class MenuItem extends StatelessWidget {
IconData mIcon;
var mText;
MenuItem(this.mIcon, this.mText);
@override
Widget build(BuildContext context) {
return Container(
child: Column(
children: [
Icon(mIcon),
Text(mText),
],
),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Row(
children: [
MenuItem(Icons.food_bank, "ALL"),
MenuItem(Icons.emoji_food_beverage, "coffee"),
MenuItem(Icons.fastfood, "burger"),
MenuItem(Icons.local_pizza, "pizza"),
],
),
],
),
);
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Row(
children: [
MenuItem(Icons.food_bank, "ALL"),
SizedBox(width: 25),
MenuItem(Icons.emoji_food_beverage, "coffee"),
SizedBox(width: 25),
MenuItem(Icons.fastfood, "burger"),
SizedBox(width: 25),
MenuItem(Icons.local_pizza, "pizza"),
],
),
],
),
);
}
class Menu extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Row(
children: [
MenuItem(Icons.food_bank, "ALL"),
SizedBox(width: 25),
MenuItem(Icons.emoji_food_beverage, "coffee"),
SizedBox(width: 25),
MenuItem(Icons.fastfood, "burger"),
SizedBox(width: 25),
MenuItem(Icons.local_pizza, "pizza"),
],
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Menu(),
],
),
);
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Menu(),
Column(
children: [
Image.asset("assets/burger.jpeg"),
Text("title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
),
],
),
);
}
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
children: [
Image.asset("assets/$title.jpeg"),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
Text("Recipes"),
Menu(),
ListItem("coffee"),
ListItem("burger"),
ListItem("pizza"),
],
),
);
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
children: [
Image.asset("assets/$title.jpeg"),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
import 'package:flutter/material.dart';
class MTitle extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text("Recipes");
}
}
import 'package:flutter/material.dart';
import 'package:flutter_recipe_app_2/component/menu_item.dart';
class Menu extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Row(
children: [
MenuItem(Icons.food_bank, "ALL"),
SizedBox(width: 25),
MenuItem(Icons.emoji_food_beverage, "coffee"),
SizedBox(width: 25),
MenuItem(Icons.fastfood, "burger"),
SizedBox(width: 25),
MenuItem(Icons.local_pizza, "pizza"),
],
);
}
}
import 'package:flutter/material.dart';
class MenuItem extends StatelessWidget {
IconData mIcon;
var mText;
MenuItem(this.mIcon, this.mText);
@override
Widget build(BuildContext context) {
return Container(
child: Column(
children: [
Icon(mIcon),
Text(mText),
],
),
);
}
}
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_recipe_app_2/component/list_item.dart';
import 'package:flutter_recipe_app_2/component/menu.dart';
import 'component/m_title.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: ListView(
children: [
MTitle(),
Menu(),
ListItem("coffee"),
ListItem("burger"),
ListItem("pizza"),
],
),
);
}
AppBar _appBar() {
return AppBar(
actions: [
Icon(Icons.search),
SizedBox(width: 16),
Icon(CupertinoIcons.heart),
SizedBox(width: 16),
],
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: Padding(
padding: EdgeInsets.symmetric(horizontal: 16),
child: ListView(
children: [
MTitle(),
Menu(),
ListItem("coffee"),
ListItem("burger"),
ListItem("pizza"),
],
),
),
);
}
AppBar _appBar() {
return AppBar(
actions: [
Icon(Icons.search),
SizedBox(width: 16),
Icon(CupertinoIcons.heart, color: Colors.redAccent),
SizedBox(width: 16),
],
);
}
}
google_fonts | Flutter package
A Flutter package to use fonts from fonts.google.com. Supports HTTP fetching, caching, and asset bundling.
Browse Fonts - Google Fonts
Making the web more beautiful, fast, and open through great typography
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
class MTitle extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text(
"Recipes",
style: GoogleFonts.patuaOne(textStyle: TextStyle(fontSize: 30)),
);
}
}
import 'package:flutter/material.dart';
class MenuItem extends StatelessWidget {
IconData mIcon;
var mText;
MenuItem(this.mIcon, this.mText);
@override
Widget build(BuildContext context) {
return Container(
width: 60,
height: 80,
child: Column(
children: [
Icon(mIcon),
Text(mText),
],
),
);
}
}
import 'package:flutter/material.dart';
class MenuItem extends StatelessWidget {
IconData mIcon;
var mText;
MenuItem(this.mIcon, this.mText);
@override
Widget build(BuildContext context) {
return Container(
width: 60,
height: 80,
decoration: BoxDecoration(
border: Border.all(color: Colors.black12),
borderRadius: BorderRadius.circular(30),
),
child: Column(
children: [
Icon(mIcon),
Text(mText),
],
),
);
}
}
import 'package:flutter/material.dart';
class MenuItem extends StatelessWidget {
IconData mIcon;
var mText;
MenuItem(this.mIcon, this.mText);
@override
Widget build(BuildContext context) {
return Container(
width: 60,
height: 80,
decoration: BoxDecoration(
border: Border.all(color: Colors.black12),
borderRadius: BorderRadius.circular(30),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Icon(
mIcon,
color: Colors.redAccent,
size: 30,
),
SizedBox(height: 5),
Text(mText),
],
),
);
}
}
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_recipe_app_2/component/list_item.dart';
import 'package:flutter_recipe_app_2/component/m_title.dart';
import 'package:flutter_recipe_app_2/component/menu.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MainPage(),
);
}
}
class MainPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
body: Padding(
padding: EdgeInsets.symmetric(horizontal: 16),
child: ListView(
children: [
MTitle(),
SizedBox(height: 20),
Menu(),
SizedBox(height: 20),
ListItem("coffee"),
ListItem("burger"),
ListItem("pizza"),
],
),
),
);
}
AppBar _appBar() {
return AppBar(
actions: [
Icon(Icons.search),
SizedBox(width: 16),
Icon(CupertinoIcons.heart, color: Colors.redAccent),
SizedBox(width: 16),
],
);
}
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
children: [
Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
children: [
ClipRRect(
child: Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
borderRadius: BorderRadius.circular(20),
),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
children: [
AspectRatio(
aspectRatio: 2 / 1,
child: ClipRRect(
child: Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
borderRadius: BorderRadius.circular(20),
),
),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
AspectRatio(
aspectRatio: 2 / 1,
child: ClipRRect(
child: Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
borderRadius: BorderRadius.circular(20),
),
),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
],
);
}
}
import 'package:flutter/material.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
AspectRatio(
aspectRatio: 2 / 1,
child: ClipRRect(
child: Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
borderRadius: BorderRadius.circular(20),
),
),
Text("$title"),
Text("Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back."),
SizedBox(height: 20),
],
);
}
}
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
class ListItem extends StatelessWidget {
var title;
ListItem(this.title);
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
AspectRatio(
aspectRatio: 2 / 1,
child: ClipRRect(
child: Image.asset(
"assets/$title.jpeg",
fit: BoxFit.cover,
),
borderRadius: BorderRadius.circular(20),
),
),
Text(
"$title",
style: GoogleFonts.patuaOne(textStyle: TextStyle(fontSize: 20)),
),
Text(
"Have you ever made your own $title? Once you've tried a homemade $title, you'll never go back.",
style: TextStyle(color: Colors.grey, fontSize: 12),
),
SizedBox(height: 20),
],
);
}
}
parangdajavous