detail_page.dart 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import 'dart:io';
  2. import 'package:flutter/material.dart';
  3. import 'package:photo_manager/photo_manager.dart';
  4. class DetailPage extends StatefulWidget {
  5. final File file;
  6. final AssetEntity entity;
  7. const DetailPage({Key key, this.file, this.entity}) : super(key: key);
  8. @override
  9. _DetailPageState createState() => _DetailPageState();
  10. }
  11. class _DetailPageState extends State<DetailPage> {
  12. @override
  13. Widget build(BuildContext context) {
  14. return Scaffold(
  15. body: Center(
  16. child: Container(
  17. color: Colors.black,
  18. child: _buildContent(),
  19. ),
  20. ),
  21. );
  22. }
  23. Widget _buildContent() {
  24. return buildImage();
  25. }
  26. Widget buildImage() {
  27. return Image.file(
  28. widget.file,
  29. filterQuality: FilterQuality.low,
  30. );
  31. }
  32. Widget buildInfoItem(String title, String info) {
  33. return Padding(
  34. padding: const EdgeInsets.all(8.0),
  35. child: Row(
  36. mainAxisSize: MainAxisSize.max,
  37. children: <Widget>[
  38. Container(
  39. alignment: Alignment.centerLeft,
  40. child: Text(
  41. title.padLeft(10, " "),
  42. textAlign: TextAlign.start,
  43. ),
  44. width: 88,
  45. ),
  46. Expanded(
  47. child: Text(info.padLeft(40, " ")),
  48. ),
  49. ],
  50. ),
  51. );
  52. }
  53. }