import 'package:flutter/material.dart';
import 'dart:io';
import 'package:image_picker/image_picker.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: '拍照',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: PhotoPage(title: '拍照App'),
);
}
}
class PhotoPage extends StatefulWidget {
PhotoPage({Key key, this.title}) : super(key: key);
final String title;
@override
_PhotoPageState createState() => _PhotoPageState();
}
class _PhotoPageState extends State<PhotoPage> {
File _image;
final picker = ImagePicker();
Future getImage() async {
final pickedFile = await picker.getImage(source: ImageSource.camera);
setState(() {
if (pickedFile != null) {
_image = File(pickedFile.path);
} else {
print('No image selected.');
}
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
'相片列表',
style: Theme.of(context).textTheme.headline4,
),
_image == null
? Text('No image selected.')
: Image.file(_image),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: getImage,
tooltip: 'Pick Image',
child: Icon(Icons.add_a_photo),
), // This trailing comma makes auto-formatting nicer for build methods.
);
}
}
今天: | ![]() ![]() |
昨天: | ![]() ![]() ![]() ![]() |
總計: | ![]() ![]() ![]() ![]() ![]() ![]() ![]() |