import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
print("MyApp build....");
return MaterialApp(
home: HomePage(),
);
}
}
class HomePage extends StatefulWidget {
@override
State<HomePage> createState() => _HomePageState();
// createState() 직접적으로
}
class _HomePageState extends State<HomePage> {
int num = 1; // statefulW 이 된 순간 상태를 저장하고 있다.
// 변경이 되면 리로드를 한다.
// 빌드를 직접 호출할 수 있는 방법은 없다.
@override
Widget build(BuildContext context) {
print("HomePage build....");
return Scaffold(
body: Column(
children: [
Expanded(
child: Center(
child: Container(
child: Text(
"$num",
style: TextStyle(fontSize: 50),
),
),
),
),
Expanded(
child: Center(
child: Container(
child: ElevatedButton(
onPressed: () {
num++;
setState(() {});
print("num: $num");
},
child: Icon(Icons.add)),
),
),
),
],
),
);
}
}
Share article