Files
Regroup/lib/Utils/Common/NoInternet.dart

82 lines
2.5 KiB
Dart

import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:lottie/lottie.dart';
import 'package:regroup/Utils/Common/CustomNextButton.dart';
import 'package:regroup/Utils/Common/sized_box.dart';
class NoInternet extends StatefulWidget {
const NoInternet({super.key});
@override
State<NoInternet> createState() => _NoInternetState();
}
class _NoInternetState extends State<NoInternet> {
Future<void> checkInternet() async {
final connectivityResult = await (Connectivity().checkConnectivity());
if (connectivityResult.contains(ConnectivityResult.wifi) ||
connectivityResult.contains(ConnectivityResult.mobile) ) {
setState(() {
// _connectionStatus = connectivityResult.toString();
Get.back(result: true);
});
} else {
setState(() {
Get.snackbar("Error", "Your internet is still down!");
// _connectionStatus = connectivityResult.toString();
// print(_connectionStatus.toString());
// Get.toNamed(RouteName.nointernet);
// Navigator.pushReplacementNamed(context, "/noInternet");
});
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Color(0xff222935),
body: Padding(
padding: const EdgeInsets.symmetric(horizontal: 16),
child: Container(
width: double.infinity,
height: 900.h,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
// Lottie.asset(
// "assets/images/nointernet.json",
// height: 230.h,
// // width: 300.w,
// // fit: BoxFit.cover
// ),
sizedBoxHeight(40.h),
Text(
'No Internet !',
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20),
),
sizedBoxHeight(15.h),
Text(
'Please Check Your Internet\nConnection',
textAlign: TextAlign.center,
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20),
),
sizedBoxHeight(20.h),
CustomButton(
text: "Try again",
onPressed: () {
checkInternet();
})
],
),
),
),
);
}
}