[flutter] get_storage를 사용하여 플러터 앱에서 사용자가 체크한 항목 목록을 저장하는 방법을 알려주세요.
사용자가 플러터 앱에서 체크한 항목 목록을 저장하려면 get_storage
패키지를 사용할 수 있습니다. 이를 이용하면 앱에서 사용자의 데이터를 로컬로 저장하고 관리할 수 있습니다. 이제 이 방법을 알아보겠습니다.
Step 1: get_storage 패키지 추가
먼저, pubspec.yaml
파일에 get_storage
패키지를 추가합니다.
dependencies:
get_storage: ^2.0.3
위와 같이 패키지를 추가한 후, 터미널에서 flutter pub get
명령어를 실행하여 패키지를 가져옵니다.
Step 2: get_storage 초기화
앱의 시작 부분에서 get_storage
를 초기화해야 합니다. 일반적으로 main.dart
파일에서 초기화하는 것이 좋습니다.
import 'package:flutter/material.dart';
import 'package:get_storage/get_storage.dart';
void main() async {
await GetStorage.init();
runApp(MyApp());
}
Step 3: 항목 저장 및 불러오기
이제 사용자가 체크한 항목을 저장하고 불러오는 과정을 구현할 차례입니다. 사용자가 체크한 항목은 예를 들면 리스트 형태로 저장될 수 있습니다. 아래의 예시 코드에서는 get_storage
를 이용하여 사용자가 체크한 항목 목록을 저장하고 불러오는 방법을 보여줍니다.
import 'package:flutter/material.dart';
import 'package:get_storage/get_storage.dart';
void main() async {
await GetStorage.init();
runApp(MyApp());
}
class MyApp extends StatelessWidget {
final GetStorage box = GetStorage();
@override
Widget build(BuildContext context) {
// 저장된 목록 불러오기
List<String> checkedItems = box.readList('checked_items') ?? [];
// 사용자가 항목 체크 시 실행되는 함수
void onItemChecked(String item) {
if (checkedItems.contains(item)) {
checkedItems.remove(item);
} else {
checkedItems.add(item);
}
// 변경된 목록 저장
box.write('checked_items', checkedItems);
}
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('체크박스 목록 저장하기'),
),
body: ListView(
children: <Widget>[
for (var item in ['항목 1', '항목 2', '항목 3'])
CheckboxListTile(
title: Text(item),
value: checkedItems.contains(item),
onChanged: (bool value) {
onItemChecked(item);
},
),
],
),
),
);
}
}
이 코드는 get_storage
를 사용하여 사용자가 체크한 항목 목록을 저장하고 불러오는 방법을 보여줍니다.
마치며
위의 예시를 참고하여 get_storage
를 사용하여 플러터 앱에서 사용자가 체크한 항목 목록을 저장하는 방법을 구현할 수 있습니다. 사용자 데이터 저장에 효과적으로 활용할 수 있는 패키지입니다.