INPUT_PAGE.DART
//font_awesome_flutter AYARLARINI YAPMAYI UNUTMA
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
class InputPage extends StatefulWidget {
@override
State<InputPage> createState() => _InputPageState();
}
class _InputPageState extends State<InputPage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(
"YAŞAM BEKLENTİSİ",
style: TextStyle(color: Colors.black87),
),
centerTitle: true,
),
body: Column(
children: <Widget>[
Expanded(
child: Row(
children: [
Expanded( // container kalıp widget
child: MyContainer(), // yazdığımız widgeti kullanıyoruz
),
Expanded(
child: MyContainer(),
),
],
),
),
Expanded(
child: MyContainer(),
),
Expanded(
child: MyContainer(),
),
Expanded(
child: Row(
children: [
Expanded(
child: MyContainer( //Widgeti parametre ile kullandık
child: IconTextWidget(cinsiyet: "KADINLAR",icon: FontAwesomeIcons.venus,),
), //widget parametreli
),
Expanded(
child: MyContainer( //Widgeti parametre ile kullandık
child: IconTextWidget(cinsiyet: "ERKEKLER", icon: FontAwesomeIcons.mars,),
),
),
],
),
),
],
),
);
}
}
class IconTextWidget extends StatelessWidget {
final String? cinsiyet;
final IconData? icon;
IconTextWidget({this.cinsiyet, this.icon}); // CONSTRUCTOR
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Icon(
icon,
size: 30,
),
SizedBox(
height: 12.0,
),
Text(
cinsiyet.toString(),
style: (TextStyle(
fontSize: 20, fontWeight: FontWeight.bold)),
)
],
);
}
}
//container kalıp widget
class MyContainer extends StatelessWidget {
// Oluşturduğumuz Widget
final Color? renk;
final Widget? child;
MyContainer(
{this.renk = Colors.white,
this.child}); // constructor named parameter default color
@override
Widget build(BuildContext context) {
return Container(
child: child,
margin: EdgeInsets.all(12.0),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10.0),
color: renk, // dışarıdan gelen rengi alacak
),
);
}
}
MAIN.DART
//import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import './input_page.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
scaffoldBackgroundColor: Colors.lightBlue,
primaryColor: Colors.lightBlue),
home: InputPage(),
);
}
}