import 'dart:async'; import 'package:flutter/material.dart'; import 'package:shared_preferences/shared_preferences.dart'; import '../../lookups/auth_lookup.dart'; import '../../util/dr_app_shared_pref.dart'; import '../../widgets/auth/auth_header.dart'; import '../../widgets/auth/known_user_login.dart'; import '../../widgets/auth/login_form.dart'; import '../../widgets/shared/dr_app_circular_progress_Indeicator.dart'; DrAppSharedPreferances sharedPref = new DrAppSharedPreferances(); class Loginsreen extends StatefulWidget { @override _LoginsreenState createState() => _LoginsreenState(); } class _LoginsreenState extends State { Future _prefs = SharedPreferences.getInstance(); String platformImei; Future platformImeiFuture; Future getSharedPref() async { sharedPref.getString('platformImei').then((imei){ platformImei = imei; }); } @override void initState() { super.initState(); platformImeiFuture = _prefs.then((SharedPreferences prefs) { return (prefs.getString('platformImei')); }); } @override Widget build(BuildContext context) { getSharedPref(); return Scaffold( backgroundColor: Colors.white, body: SingleChildScrollView( child: FutureBuilder( future: platformImeiFuture, builder: (BuildContext context, AsyncSnapshot snapshot) { switch (snapshot.connectionState) { case ConnectionState.waiting: return DrAppCircularProgressIndeicator(); default: if (snapshot.hasError) { return Text('Error: ${snapshot.error}'); } else { return Container( margin: EdgeInsetsDirectional.fromSTEB(30, 0, 0, 0), alignment: Alignment.topLeft, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ (platformImei == null) ? Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ AuthHeader(loginType.knownUser), LoginForm(), ], ) : Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ AuthHeader(loginType.unknownUser), KnownUserLogin(), ], ), ])); } } }), ), ); } }