Shared Preference - to store data locallyy
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:intl/intl.dart';
import 'package:waris/IntroPage.dart';
import 'package:waris/ProfileScreen.dart';
//import 'package:waris/splash_screen.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Flutter Demo',
theme: ThemeData(
textTheme: TextTheme(
headline1: TextStyle(
fontWeight: FontWeight.bold, fontSize: 25, color: Colors.black),
subtitle1: TextStyle(
fontSize: 15,
fontWeight: FontWeight.bold,
color: Colors.green)),
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
State<StatefulWidget> createState() {
return MyHomeState();
}
}
class MyHomeState extends State<MyHomePage> {
@override
void initState() {
super.initState();
getValue();
}
var nameValue = 'No value saved';
var nameController = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Stateful widget'),
),
body:Center(
child: Container(
width: 200,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TextField(
decoration:InputDecoration(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(21)
),
label: Text('Name')
),
controller: nameController,
),
ElevatedButton(onPressed: () async {
var name = nameController.text.toString();
var pref = await SharedPreferences.getInstance();
pref.setString('name', name);
}, child: Text('Save')),
Text(nameValue)
],
),
),
));
}
void getValue() async{
var prefs = await SharedPreferences.getInstance();
var getName = prefs.getString('name');
nameValue = getName != null ? getName : "no value saved";
setState(() {
nameValue = getName != null ? getName : "no value saved";
});
}
}
Comments
Post a Comment