set ve get
- Flutter kursu
- Orta seviye
- Ders 38/99
- 4 dk
setString, getInt ve getString metodlarını öğrenirsin.
set ve get metodları
shared_preferences ile veri yazmak için setString, setInt, setBool, setDouble metodlarını kullanırsın. Okumak için getString, getInt, getBool metodlarını çağırırsın. set metodları Future<bool> döndürür, get metodları değeri (ya da null) döndürür.
await prefs.setString('name', 'Ada'); // yaz
await prefs.setInt('age', 25); // yaz
prefs.getString('name'); // 'Ada'
prefs.getInt('age'); // 25Get metodları ve null durumu
Anahtar daha önce yazılmadıysa get metodları null döndürür. Bunun için ?? operatörü ile varsayılan değer verebilirsin: prefs.getString('theme') ?? 'light'. Böylece uygulama ilk açıldığında varsayılan tema kullanılır.
final theme = prefs.getString('theme') ?? 'light';
final count = prefs.getInt('count') ?? 0;Uygulama setInt ile yaz, getInt ile oku
getInstance ile prefs al, setInt('count', 7) ile değer yaz, getInt('count') ile oku ve print ile bastır.
Başlangıç kodu
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
final prefs = await SharedPreferences.getInstance();
// setInt ile 'count' = 7 yaz
// getInt ile oku ve print ile bastır
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(home: Scaffold(body: Center(child: Text('set ve get')));
}
}Örnek çözüm
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
final prefs = await SharedPreferences.getInstance();
await prefs.setInt('count', 7);
print(prefs.getInt('count'));
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(home: Scaffold(body: Center(child: Text('set ve get')));
}
}Beklenen çıktı
7
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Saklanan bir int değerini okumak için hangi metod kullanılır?
- getString
- setInt
- setString
- getInt Doğru cevap
Açıklama: int türünde bir değer okumak için getInt kullanılır; setInt yazmak içindir, getString ise String okur.
2 setInt ile değer yaz
await prefs.____;
await prefs.setInt('count', 7);
Açıklama: int saklamak için setInt kullanılır; anahtar ve int değer alır. setString String alır, getInt ise okuma yapar.
3 Metod - tür eşleştirme
| Kavram | Anlamı |
|---|---|
setString |
String yazar |
getString |
String okur |
setInt |
int yazar |
getInt |
int okur |