index.dart 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import 'package:flutter/material.dart';
  2. import 'package:ijkplayer_example/page/paging_page.dart';
  3. import 'package:ijkplayer_example/page/screen_shot_page.dart';
  4. import 'package:ijkplayer_example/page/video_list.dart';
  5. import '../i18n/i18n.dart';
  6. import 'asset_page.dart';
  7. import 'controller_stream_use.dart';
  8. import 'custom_ijk_opt_page.dart';
  9. import 'dialog_video_page.dart';
  10. import 'full_screen.dart';
  11. import 'gallery_page.dart';
  12. import 'ijk_status_page.dart';
  13. import 'in_overlay_page.dart';
  14. import 'network.dart';
  15. class IndexPage extends StatefulWidget {
  16. @override
  17. _IndexPageState createState() => _IndexPageState();
  18. }
  19. class _IndexPageState extends State<IndexPage> {
  20. @override
  21. Widget build(BuildContext context) {
  22. return Scaffold(
  23. appBar: AppBar(
  24. title: Text(currentI18n.indexTitle),
  25. ),
  26. body: ListView(
  27. children: <Widget>[
  28. buildButton(currentI18n.networkButton, NetworkPage()),
  29. buildButton(currentI18n.photoButton, PlayGalleryPage()),
  30. buildButton(currentI18n.assetButton, AssetPage()),
  31. buildButton(currentI18n.listViewButton, VideoList()),
  32. buildButton(currentI18n.fullScreenAutoButton, FullScreen()),
  33. buildButton(currentI18n.fullScreenManualButton, FullScreen2()),
  34. buildButton(currentI18n.withDialogButton, DialogVideoPage()),
  35. buildButton(currentI18n.pageViewButton, PagingPickPage()),
  36. buildButton(currentI18n.useStreamUsage, ControllerStreamUsagePage()),
  37. buildButton(currentI18n.screenshotTitle, ScreenShotPage()),
  38. buildButton(currentI18n.overlayPageTitle, InOverlayPage()),
  39. buildButton(currentI18n.ijkStatusTitle, IjkStatusPage()),
  40. buildButton(currentI18n.customOption, CustomIjkOptionPage()),
  41. ],
  42. ),
  43. );
  44. }
  45. Widget buildButton(String text, Widget targetPage) {
  46. return FlatButton(
  47. onPressed: () {
  48. Navigator.push(context, MaterialPageRoute(builder: (_) => targetPage));
  49. },
  50. child: Text(text),
  51. );
  52. }
  53. }