[flutter] shared_preferences 를 사용하여 사용자가 선택한 자동완성 목록을 저장하는 방법은 무엇인가요?
- 먼저,
shared_preferences
패키지를 프로젝트에 추가해야 합니다.pubspec.yaml
파일에 다음과 같이shared_preferences
를 추가합니다:
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.8
pubspec.yaml
파일 변경 후, 패키지를 가져옵니다. 터미널에서 다음 명령어를 실행합니다:
flutter pub get
- 이제
shared_preferences
를 사용할 준비가 되었습니다. 자동완성 목록을 저장하기 위한SharedPreferences
인스턴스를 생성합니다. 일반적으로 앱 전체에서 공유할SharedPreferences
인스턴스를 생성하는 것이 좋습니다. 예를 들어,SharedPreferences
인스턴스를 생성하는 함수를 작성합니다:
import 'package:shared_preferences/shared_preferences.dart';
Future<SharedPreferences> getSharedPreferencesInstance() async {
return await SharedPreferences.getInstance();
}
- 이제 자동완성 목록을 저장하고 가져오는 함수를 작성합니다. 예를 들어,
saveAutoCompleteList
함수를 사용하여 자동완성 목록을 저장합니다:
import 'package:shared_preferences/shared_preferences.dart';
Future<void> saveAutoCompleteList(List<String> autoCompleteList) async {
SharedPreferences prefs = await getSharedPreferencesInstance();
await prefs.setStringList('autoCompleteList', autoCompleteList);
}
- 마지막으로, 저장된 자동완성 목록을 가져오는
getAutoCompleteList
함수를 작성합니다:
import 'package:shared_preferences/shared_preferences.dart';
Future<List<String>> getAutoCompleteList() async {
SharedPreferences prefs = await getSharedPreferencesInstance();
List<String>? autoCompleteList = prefs.getStringList('autoCompleteList');
return autoCompleteList ?? []; // 예외 처리를 위해 null 체크
}
이제 saveAutoCompleteList
함수를 호출하여 자동완성 목록을 저장하고, getAutoCompleteList
함수를 호출하여 저장된 목록을 가져올 수 있습니다. 이렇게 하면 사용자가 선택한 자동완성 목록을 계속해서 유지할 수 있습니다.
참고 문서: