「Flutter/外部ライブラリ/shared preferences」の版間の差分
提供: 初心者エンジニアの簡易メモ
細 (Admin がページ「Flutter/値保存」を「Flutter/外部ライブラリ/値保存」に、リダイレクトを残さずに移動しました) |
(→shared_preferencesをインストール) |
||
行9: | 行9: | ||
flutter packages get | flutter packages get | ||
+ | |||
+ | ==値設定、値取得== | ||
+ | 値取得 | ||
+ | SharedPreferences prefs = await SharedPreferences.getInstance(); | ||
+ | int counter = prefs.getInt('counter'); | ||
+ | |||
+ | 値設定 | ||
+ | SharedPreferences prefs = await SharedPreferences.getInstance(); | ||
+ | prefs.setInt('counter', 10); | ||
==サンプル== | ==サンプル== |
2019年4月28日 (日) 16:51時点における版
pubspec.yaml
dependencies: flutter: sdk: flutter shared_preferences: ^0.5.2
flutter packages get
値設定、値取得
値取得
SharedPreferences prefs = await SharedPreferences.getInstance(); int counter = prefs.getInt('counter');
値設定
SharedPreferences prefs = await SharedPreferences.getInstance(); prefs.setInt('counter', 10);
サンプル
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. ); } }