page.dart 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. 200,
  13. 200,
  14. ];
  15. final _playerStateController = Get.put(PlayerStateController());
  16. @override
  17. void initState() {
  18. super.initState();
  19. }
  20. @override
  21. Widget build(BuildContext context) {
  22. return Scaffold(
  23. appBar: AppBar(
  24. title: const Text("Image 载入测试"),
  25. ),
  26. body: Column(
  27. children: [
  28. const SizedBox(height: 24),
  29. ElevatedButton(
  30. onPressed: () => {_playerStateController.play(context)},
  31. child: const Text("Load Together")),
  32. const SizedBox(height: 24),
  33. SizedBox(height: 800, child: buildPlayersGrid(imageNum)),
  34. ],
  35. ));
  36. }
  37. Widget buildPlayersGrid(List<int> imageNumList) {
  38. return GridView.count(
  39. crossAxisCount: 3,
  40. childAspectRatio: 1,
  41. shrinkWrap: true,
  42. children: imageNumList
  43. .map((imageNum) =>
  44. ImageTestView(imageNum, viewSize: const Size(300, 100)))
  45. .toList(),
  46. );
  47. }
  48. @override
  49. void dispose() {
  50. super.dispose();
  51. Get.delete<PlayerStateController>();
  52. _playerStateController.dispose();
  53. }
  54. }