效果
实现代码如下
test.dart
import 'dart:io';
import 'dart:math';
import 'package:com/widget/base_layout.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
void main() {
runApp(MaterialApp(
debugShowCheckedModeBanner: false,
home: MyApp(),
));
if (Platform.isAndroid) {
SystemUiOverlayStyle systemUiOverlayStyle =
SystemUiOverlayStyle(statusBarColor: Colors.transparent);
SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
}
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp>{
BaseLayoutStatus status = BaseLayoutStatus.none;
_loadData(){
setState(() {
status = BaseLayoutStatus.loading;
});
Future.delayed(Duration(seconds: 3),(){
setState(() {
switch(Random().nextInt(3)){
case 0:
status = BaseLayoutStatus.fail;
break;
case 1:
status = BaseLayoutStatus.nodata;
break;
default:
status = BaseLayoutStatus.success;