hyzp_ybqx-Commit001:代码刚转换好,编译通过
This commit is contained in:
@@ -0,0 +1,151 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import '../../services/EventBus.dart';
|
||||
import 'package:camera/camera.dart';
|
||||
import '../../components/commonFun.dart';
|
||||
import 'dart:io';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
|
||||
|
||||
class FaceLogin extends StatefulWidget {
|
||||
FaceLogin({this.arguments, Key key}) : super(key: key);
|
||||
var arguments;
|
||||
|
||||
_LoginPageState createState() => _LoginPageState();
|
||||
}
|
||||
|
||||
class _LoginPageState extends State<FaceLogin> {
|
||||
Future<void> camerasInit() async {
|
||||
try {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
cameras = await availableCameras();
|
||||
print(cameras.toString());
|
||||
} on CameraException catch (e) {
|
||||
//logError(e.code, e.description);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
camerasInit();
|
||||
}
|
||||
|
||||
//监听登录页面销毁的事件
|
||||
dispose() {
|
||||
super.dispose();
|
||||
eventBus.fire(new UserEvent('登录成功...'));
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// appBar: AppBar(
|
||||
// centerTitle: true,
|
||||
// title: Text('人脸验证登录'),
|
||||
// ),
|
||||
body: Container(
|
||||
padding: EdgeInsets.all(ScreenUtil().setWidth(20)),
|
||||
child: ListView(
|
||||
children: <Widget>[
|
||||
Center(
|
||||
child: Container(
|
||||
margin: EdgeInsets.only(top: 30),
|
||||
height: ScreenUtil().setWidth(160),
|
||||
width: ScreenUtil().setWidth(160),
|
||||
child: Image.asset('assets/images/ybsthbj.png', fit: BoxFit.fitHeight),
|
||||
),
|
||||
),
|
||||
//SizedBox(height: 30),
|
||||
Center(
|
||||
child: Container(
|
||||
//margin: EdgeInsets.only(top: 30),
|
||||
height: ScreenUtil().setWidth(800),
|
||||
width: ScreenUtil().setWidth(800),
|
||||
child: FlatButton(
|
||||
onPressed: () {
|
||||
Navigator.pushNamed(context, '/faceLogin_take_pictuer', arguments: 'FaceLogin');
|
||||
},
|
||||
//已经为图片header1.png添加圆形边框
|
||||
child: Stack(
|
||||
children: <Widget>[
|
||||
Align(
|
||||
alignment: Alignment.center,
|
||||
child: Container(
|
||||
child: Image.asset('assets/images/header1.png', fit: BoxFit.cover),
|
||||
),
|
||||
),
|
||||
Align(
|
||||
alignment: Alignment.center,
|
||||
child: Container(
|
||||
alignment: Alignment(0, 0),
|
||||
//192像素的图片显示出来为202像素,200 = 192 + 8
|
||||
height: 200,
|
||||
width: 200,
|
||||
decoration: BoxDecoration(
|
||||
//color: Colors.black,
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(color: Color.fromRGBO(88, 126, 211, 1), width: 5.0),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(400),
|
||||
// ),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
height: 20,
|
||||
),
|
||||
// Container(
|
||||
// alignment: Alignment(0, 0),
|
||||
// width: 200,
|
||||
// height: 230,
|
||||
// decoration: BoxDecoration(
|
||||
// border: Border.all(color: Colors.orange, width: 1.0),
|
||||
// ),
|
||||
// child: _getImage(widget.arguments),
|
||||
// ),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
//定义一个组件显示图片
|
||||
Widget _getImage(String filePath) {
|
||||
if (null == filePath) {
|
||||
return Text("请选择图片...");
|
||||
}
|
||||
File _image = File(filePath);
|
||||
//return Image.file(_image);
|
||||
|
||||
int imageWidth;
|
||||
int imageHeight;
|
||||
// 预先获取图片信息
|
||||
Image image = Image.file(File.fromUri(Uri.parse(filePath)));
|
||||
image.image
|
||||
.resolve(new ImageConfiguration())
|
||||
.addListener(new ImageStreamListener((ImageInfo info, bool _) {
|
||||
imageWidth = info.image.width;
|
||||
imageHeight = info.image.height;
|
||||
}));
|
||||
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: <Widget>[
|
||||
//480*720
|
||||
Text('宽高:${imageWidth}x${imageHeight}', style: TextStyle(fontSize: 17.0)),
|
||||
Container(
|
||||
width: imageWidth / 4,
|
||||
height: imageHeight / 4,
|
||||
decoration: BoxDecoration(
|
||||
image: DecorationImage(image: AssetImage(filePath), fit: BoxFit.cover),
|
||||
),
|
||||
)
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user