106 lines
3.2 KiB
Dart
106 lines
3.2 KiB
Dart
import 'package:flutter/material.dart';
|
||
import 'package:flutter/services.dart';
|
||
|
||
import '../../components/commonFun.dart';
|
||
import '../../services/Storage.dart';
|
||
import 'FaceLogin.dart';
|
||
import 'LoginByName2.dart';
|
||
|
||
// class LoginTabs extends StatelessWidget {
|
||
// // This widget is the root of your application.
|
||
// @override
|
||
// Widget build(BuildContext context) {
|
||
// //Flutter 强制竖屏
|
||
// SystemChrome.setPreferredOrientations([
|
||
// DeviceOrientation.portraitUp, //只能纵向
|
||
// DeviceOrientation.portraitDown, //只能纵向
|
||
// ]);
|
||
//
|
||
// return MaterialApp(
|
||
// debugShowCheckedModeBanner: false,
|
||
// title: 'Flutter Demo',
|
||
// theme: ThemeData(
|
||
// primarySwatch: Colors.blue,
|
||
// visualDensity: VisualDensity.adaptivePlatformDensity,
|
||
// ),
|
||
// home: MyHomePage(title: 'Flutter Demo Home Page'),
|
||
// );
|
||
// }
|
||
// }
|
||
|
||
class LoginTabs extends StatefulWidget {
|
||
LoginTabs({Key key, this.title}) : super(key: key);
|
||
final String title;
|
||
|
||
@override
|
||
_MyHomePageState createState() => _MyHomePageState();
|
||
}
|
||
|
||
class _MyHomePageState extends State<LoginTabs> {
|
||
@override
|
||
void initState() {
|
||
super.initState();
|
||
|
||
//若下面文件不存在,
|
||
// /data/data/com.flutter.hyzp_ybqx/shared_prefs/FlutterSharedPreferences.xml
|
||
// value为null, 会抛出异常:
|
||
// [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: Invalid argument(s): The source must not be null
|
||
// int.parse (dart:core-patch/integers_patch.dart:51:25)
|
||
Storage.getString("tabs_index").then((value) {
|
||
g_iIndex = (null == value) ? 0 : int.parse(value);
|
||
});
|
||
}
|
||
|
||
@override
|
||
Widget build(BuildContext context) {
|
||
return Container(
|
||
decoration: BoxDecoration(
|
||
image: DecorationImage(
|
||
image: AssetImage("assets/images/背景图.png"),
|
||
fit: BoxFit.cover,
|
||
),
|
||
),
|
||
child: Container(
|
||
width: double.infinity,
|
||
height: 400,
|
||
child: Container(
|
||
constraints: BoxConstraints(
|
||
minWidth: double.infinity, //最小宽度尽量取最大
|
||
maxHeight: 400 //最小高度为80
|
||
),
|
||
child: DefaultTabController(
|
||
length: 2,
|
||
child: Scaffold(
|
||
//backgroundColor: Colors.transparent,
|
||
appBar: AppBar(
|
||
//backgroundColor: Colors.transparent,
|
||
title: Text("宜宾市黑烟车电子抓拍系统"),
|
||
leading: IconButton(
|
||
icon: Icon(Icons.close),
|
||
onPressed: () {
|
||
SystemNavigator.pop();
|
||
},
|
||
),
|
||
centerTitle: true,
|
||
bottom: TabBar(
|
||
labelColor: Colors.blueAccent,
|
||
unselectedLabelColor: Colors.black26,
|
||
tabs: <Widget>[Tab(text: "密码登录"), Tab(text: "刷脸登录")],
|
||
),
|
||
),
|
||
body: TabBarView(
|
||
//flutter tabbar禁止手势滑动-OK
|
||
physics: new NeverScrollableScrollPhysics(),
|
||
children: <Widget>[
|
||
LoginByName2(),
|
||
FaceLogin(),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
),
|
||
),
|
||
);
|
||
}
|
||
}
|