Files
hyzp_ybqx/lib/pages/Login/LoginTabs.dart
T

106 lines
3.2 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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(),
],
),
),
),
),
),
);
}
}