page.dart 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import 'package:flutter/material.dart';
  2. import 'package:get/get.dart';
  3. import 'package:vid_player_demo/controller/player_controller.dart';
  4. import 'package:vid_player_demo/pages/image_test/view.dart';
  5. class ImageTestPage extends StatefulWidget {
  6. const ImageTestPage({Key? key}) : super(key: key);
  7. @override
  8. _ImageTestPageState createState() => _ImageTestPageState();
  9. }
  10. class _ImageTestPageState extends State<ImageTestPage> {
  11. final imageNum = [
  12. 500,
  13. 500,
  14. ];
  15. final _playerStateController = Get.put(PlayerStateController());
  16. @override
  17. void initState() {
  18. // TODO: implement initState
  19. super.initState();
  20. }
  21. @override
  22. Widget build(BuildContext context) {
  23. return Scaffold(
  24. appBar: AppBar(
  25. title: const Text("Image 载入测试"),
  26. ),
  27. body: Column(
  28. children: [
  29. const SizedBox(height: 24),
  30. ElevatedButton(
  31. onPressed: () => {_playerStateController.play(context)},
  32. child: const Text("Load Together")),
  33. const SizedBox(height: 24),
  34. SizedBox(height: 800, child: buildPlayersGrid(imageNum)),
  35. ],
  36. ));
  37. }
  38. Widget buildPlayersGrid(List<int> imageNumList) {
  39. return GridView.count(
  40. crossAxisCount: 3,
  41. childAspectRatio: 1,
  42. shrinkWrap: true,
  43. children: imageNumList
  44. .map((imageNum) =>
  45. ImageTestView(imageNum, viewSize: const Size(300, 100)))
  46. .toList(),
  47. );
  48. }
  49. @override
  50. void dispose() {
  51. super.dispose();
  52. Get.delete<PlayerStateController>();
  53. _playerStateController.dispose();
  54. }
  55. }