You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

106 lines
3.2 KiB
Dart

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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(),
],
),
),
),
),
),
);
}
}