「Flutter/外部ライブラリ/shared preferences」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→値設定、値取得) |
(→値設定、値取得) |
||
行15: | 行15: | ||
値取得 | 値取得 | ||
− | SharedPreferences prefs = await SharedPreferences.getInstance(); | + | void _incrementCounter() async { |
− | + | SharedPreferences prefs = await SharedPreferences.getInstance(); | |
+ | int counter = prefs.getInt('counter'); | ||
+ | } | ||
値設定 | 値設定 | ||
− | SharedPreferences prefs = await SharedPreferences.getInstance(); | + | void _incrementCounter() async { |
− | + | SharedPreferences prefs = await SharedPreferences.getInstance(); | |
+ | await prefs.setInt('counter', 10); | ||
+ | } | ||
+ | asyncで囲む必要がある | ||
==サンプル== | ==サンプル== |
2019年4月28日 (日) 17:11時点における版
pubspec.yaml
dependencies: flutter: sdk: flutter shared_preferences: ^0.5.2
flutter packages get
値設定、値取得
準備
import 'package:shared_preferences/shared_preferences.dart';
値取得
void _incrementCounter() async { SharedPreferences prefs = await SharedPreferences.getInstance(); int counter = prefs.getInt('counter'); }
値設定
void _incrementCounter() async { SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.setInt('counter', 10); }
asyncで囲む必要がある
サンプル
import 'package:shared_preferences/shared_preferences.dart'; class _MyHomePageState extends State<MyHomePage> { int _counter = 0; _incrementCounter() async { SharedPreferences prefs = await SharedPreferences.getInstance(); int counter = (prefs.getInt('counter') ?? 0) + 1; print('Pressed $counter times.'); await prefs.setInt('counter', counter); setState(() { _counter = counter; }); } @override void initState(){ _incrementCounter(); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Text( 'HelloWorld:', ), Text( '$_counter', style: Theme.of(context).textTheme.display1, ), ], ), ), floatingActionButton: FloatingActionButton( onPressed: _incrementCounter, tooltip: 'Increment', child: Icon(Icons.add), ), // This trailing comma makes auto-formatting nicer for build methods. ); } }