[flutter] shared_preferences 를 사용하여 사용자가 선택한 캘린더 색상을 저장하는 방법은 무엇인가요?
먼저, shared_preferences
패키지를 프로젝트에 추가해야 합니다. pubspec.yaml
파일의 dependencies
섹션에 다음과 같이 추가해주세요.
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.6
그런 다음, 다음과 같이 사용자가 선택한 캘린더 색상을 저장하는 함수를 작성할 수 있습니다.
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
class CalendarSettings {
Future<void> saveColor(Color color) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setInt('calendarColor', color.value);
}
Future<Color?> getColor() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
int? colorValue = prefs.getInt('calendarColor');
return Color(colorValue ?? Colors.blue.value);
}
}
위의 코드에서, saveColor
함수는 사용자가 선택한 색상을 shared_preferences
를 통해 저장하고, getColor
함수는 저장된 색상을 반환합니다. 저장된 색상이 없을 경우에는 기본값으로 Colors.blue
를 사용합니다.
이제 선택한 캘린더 색상을 저장하고 불러올 수 있는 CalendarSettings
클래스를 사용할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
CalendarSettings settings = CalendarSettings();
// 캘린더 색상 저장
settings.saveColor(Colors.red);
// 캘린더 색상 불러오기
Color? color = await settings.getColor();
print(color); // 출력: Colors.red
이렇게 하면 shared_preferences
를 사용하여 사용자가 선택한 캘린더 색상을 저장하고 불러올 수 있습니다.