[flutter] 플러터 get과 위젯 사용
목차
Get 패키지란?
Get은 플러터에서 네비게이션, 상태 관리, 다이얼로그, 라우팅 등을 쉽게 처리할 수 있도록 도와주는 패키지입니다. Get 패키지를 이용하면 별도의 context나 builder를 사용하지 않고도 간단하게 화면 전환 및 상태 관리를 할 수 있습니다.
Get을 이용한 화면 전환
Get 패키지를 사용하면 화면 전환을 쉽게 처리할 수 있습니다. 다음은 Get을 이용한 화면 전환의 간단한 예시입니다.
import 'package:flutter/material.dart';
import 'package:get/get.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GetMaterialApp(
home: HomeScreen(),
);
}
}
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Home Screen'),
),
body: Center(
child: ElevatedButton(
onPressed: () {
Get.to(SecondScreen());
},
child: Text('Go to Second Screen'),
),
),
);
}
}
class SecondScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Second Screen'),
),
body: Center(
child: Text('This is the second screen'),
),
);
}
}
Get을 이용한 상태 관리
Get 패키지를 사용하면 상태 관리 또한 간단하게 처리할 수 있습니다. GetX 패키지를 이용하면 상태 변화를 감지하여 화면을 업데이트할 수 있습니다.
import 'package:flutter/material.dart';
import 'package:get/get.dart';
void main() {
runApp(MyApp());
}
class CounterController extends GetxController {
var count = 0.obs;
increment() {
count.value++;
}
}
class MyApp extends StatelessWidget {
final CounterController counterController = Get.put(CounterController());
@override
Widget build(BuildContext context) {
return GetMaterialApp(
home: Scaffold(
appBar: AppBar(
title: Obx(() => Text("Count: ${counterController.count}")),
),
body: Center(
child: ElevatedButton(
onPressed: () {
counterController.increment();
},
child: Text('Increment'),
),
),
),
);
}
}
결론
Get 패키지를 사용하면 플러터 앱의 네비게이션, 상태 관리 등을 간단하게 처리할 수 있습니다. 빠른 화면 전환과 간편한 상태 관리를 위해 Get 패키지를 적극적으로 활용해보세요.
위의 예시 코드는 GetX 패키지 공식 문서를 참고하여 작성되었습니다.