重构example项目结构

This commit is contained in:
Kuloud
2023-12-30 07:54:59 +08:00
parent f8e58fcb35
commit 5abe4d7f6d
30 changed files with 740 additions and 547 deletions

View File

@ -1,24 +1,16 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_gridview.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
class GesturesDemoPage extends BasePage {
GesturesDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
_Body({Key? key}) : super(key: key);
class GesturesDemoPage extends StatefulWidget {
GesturesDemoPage({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<GesturesDemoPage> {
///是否支持缩放手势
bool _zoomGesturesEnabled = true;

View File

@ -1,25 +1,16 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_gridview.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
class MapUIDemoPage extends BasePage {
MapUIDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
_Body({Key? key}) : super(key: key);
class MapUIDemoPage extends StatefulWidget {
MapUIDemoPage({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MapUIDemoPage> {
///显示路况开关
bool _trafficEnabled = false;

View File

@ -1,24 +1,14 @@
import 'dart:typed_data';
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class SnapshotPage extends BasePage {
SnapshotPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _SnapShotBody();
}
}
class _SnapShotBody extends StatefulWidget {
class SnapshotPage extends StatefulWidget {
@override
State<StatefulWidget> createState() => _SnapShotState();
}
class _SnapShotState extends State<_SnapShotBody> {
class _SnapShotState extends State<SnapshotPage> {
AMapController? _mapController;
Uint8List? _imageBytes;
@override

View File

@ -1,24 +1,15 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_radio_group.dart';
import 'package:flutter/material.dart';
class ChangeMapTypePage extends BasePage {
ChangeMapTypePage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _PageBody();
}
class _PageBody extends StatefulWidget {
_PageBody({Key? key}) : super(key: key);
class ChangeMapTypePage extends StatefulWidget {
ChangeMapTypePage({Key? key}) : super(key: key);
@override
_PageBodyState createState() => _PageBodyState();
}
class _PageBodyState extends State<_PageBody> {
class _PageBodyState extends State<ChangeMapTypePage> {
//地图类型
late MapType _mapType;
final Map<String, MapType> _radioValueMap = {

View File

@ -1,27 +1,16 @@
import 'dart:typed_data';
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
class CustomMapStylePage extends BasePage {
CustomMapStylePage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _CustomMapStyleBody();
}
class _CustomMapStyleBody extends StatefulWidget {
_CustomMapStyleBody({Key? key}) : super(key: key);
class CustomMapStylePage extends StatefulWidget {
CustomMapStylePage({Key? key}) : super(key: key);
@override
_CustomMapStyleState createState() => _CustomMapStyleState();
}
class _CustomMapStyleState extends State<_CustomMapStyleBody> {
class _CustomMapStyleState extends State<CustomMapStylePage> {
bool _mapCreated = false;
CustomStyleOptions _customStyleOptions = CustomStyleOptions(false);

View File

@ -1,24 +1,15 @@
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class LimitMapBoundsPage extends BasePage {
LimitMapBoundsPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
_Body({Key? key}) : super(key: key);
class LimitMapBoundsPage extends StatefulWidget {
LimitMapBoundsPage({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<LimitMapBoundsPage> {
@override
Widget build(BuildContext context) {
final AMapWidget amap = AMapWidget(

View File

@ -1,28 +1,18 @@
import 'dart:typed_data';
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:x_amap_base/x_amap_base.dart';
class AllMapConfigDemoPage extends BasePage {
AllMapConfigDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _MapUiBody();
}
}
class _MapUiBody extends StatefulWidget {
class AllMapConfigDemoPage extends StatefulWidget {
@override
State<StatefulWidget> createState() => _MapUiBodyState();
}
class _MapUiBodyState extends State<_MapUiBody> {
class _MapUiBodyState extends State<AllMapConfigDemoPage> {
//默认显示在北京天安门
static final CameraPosition _kInitialPosition = const CameraPosition(
target: LatLng(39.909187, 116.397451),

View File

@ -1,22 +1,14 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
import 'package:permission_handler/permission_handler.dart';
class MyLocationPage extends BasePage {
MyLocationPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
_Body({Key? key}) : super(key: key);
class MyLocationPage extends StatefulWidget {
MyLocationPage({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MyLocationPage> {
@override
void initState() {
super.initState();
@ -44,6 +36,7 @@ class _BodyState extends State<_Body> {
circleStrokeWidth: 1,
),
);
return Container(
child: amap,
);

View File

@ -1,23 +1,14 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class MinMaxZoomDemoPage extends BasePage {
MinMaxZoomDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
_Body({Key? key}) : super(key: key);
class MinMaxZoomDemoPage extends StatefulWidget {
MinMaxZoomDemoPage({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MinMaxZoomDemoPage> {
final double _minZoom = 10;
final double _maxZoom = 15;
String? _currentZoom;

View File

@ -1,23 +1,14 @@
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:flutter/material.dart';
class MultiMapDemoPage extends BasePage {
MultiMapDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return const _MultiMapDemoBody();
}
}
class _MultiMapDemoBody extends StatefulWidget {
const _MultiMapDemoBody();
class MultiMapDemoPage extends StatefulWidget {
const MultiMapDemoPage();
@override
State<StatefulWidget> createState() => _MultiMapDemoState();
}
class _MultiMapDemoState extends State<_MultiMapDemoBody> {
class _MultiMapDemoState extends State<MultiMapDemoPage> {
@override
Widget build(BuildContext context) {
return Container(

View File

@ -1,23 +1,13 @@
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
import 'package:amap_map/amap_map.dart';
class ShowMapPage extends BasePage {
ShowMapPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _ShowMapPageBody();
}
}
class _ShowMapPageBody extends StatefulWidget {
class ShowMapPage extends StatefulWidget {
@override
State<StatefulWidget> createState() => _ShowMapPageState();
}
class _ShowMapPageState extends State<_ShowMapPageBody> {
class _ShowMapPageState extends State<ShowMapPage> {
List<Widget> _approvalNumberWidget = <Widget>[];
@override
Widget build(BuildContext context) {

View File

@ -1,22 +1,13 @@
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class MarkerAddAfterMapPage extends BasePage {
MarkerAddAfterMapPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
class MarkerAddAfterMapPage extends StatefulWidget {
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MarkerAddAfterMapPage> {
static final LatLng defaultPosition = const LatLng(39.909187, 116.397451);
//需要先设置一个空的map赋值给AMapWidget的markers否则后续无法添加marker
final Map<String, Marker> _markers = <String, Marker>{};

View File

@ -2,23 +2,14 @@ import 'dart:math';
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class MarkerAddWithMapPage extends BasePage {
MarkerAddWithMapPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
class MarkerAddWithMapPage extends StatefulWidget {
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MarkerAddWithMapPage> {
static final LatLng mapCenter = const LatLng(39.909187, 116.397451);
final Map<String, Marker> _initMarkerMap = <String, Marker>{};

View File

@ -2,33 +2,21 @@ import 'dart:async';
import 'dart:typed_data';
import 'dart:ui';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'dart:math';
class MarkerConfigDemoPage extends BasePage {
MarkerConfigDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _Body();
}
}
class _Body extends StatefulWidget {
const _Body();
class MarkerConfigDemoPage extends StatefulWidget {
const MarkerConfigDemoPage();
@override
State<StatefulWidget> createState() => _State();
}
class _State extends State<_Body> {
class _State extends State<MarkerConfigDemoPage> {
static final LatLng mapCenter = const LatLng(39.909187, 116.397451);
Map<String, Marker> _markers = <String, Marker>{};

View File

@ -1,22 +1,13 @@
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/const_config.dart';
import 'package:flutter/material.dart';
class MarkerCustomIconPage extends BasePage {
MarkerCustomIconPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) => _Body();
}
class _Body extends StatefulWidget {
class MarkerCustomIconPage extends StatefulWidget {
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<_Body> {
class _BodyState extends State<MarkerCustomIconPage> {
static final LatLng markerPosition = const LatLng(39.909187, 116.397451);
final Map<String, Marker> _initMarkerMap = <String, Marker>{};
String? _currentMarkerId;

View File

@ -1,4 +1,3 @@
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
@ -6,22 +5,14 @@ import 'package:flutter/widgets.dart';
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
class PolygonDemoPage extends BasePage {
PolygonDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _Body();
}
}
class _Body extends StatefulWidget {
const _Body();
class PolygonDemoPage extends StatefulWidget {
const PolygonDemoPage();
@override
State<StatefulWidget> createState() => _State();
}
class _State extends State<_Body> {
class _State extends State<PolygonDemoPage> {
_State();
// Values when toggling Polygon color

View File

@ -1,4 +1,3 @@
import 'package:amap_map_example/base_page.dart';
import 'package:amap_map_example/widgets/amap_switch_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
@ -6,22 +5,14 @@ import 'package:flutter/widgets.dart';
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
class PolylineDemoPage extends BasePage {
PolylineDemoPage(String title, String subTitle) : super(title, subTitle);
@override
Widget build(BuildContext context) {
return _Body();
}
}
class _Body extends StatefulWidget {
const _Body();
class PolylineDemoPage extends StatefulWidget {
const PolylineDemoPage();
@override
State<StatefulWidget> createState() => _State();
}
class _State extends State<_Body> {
class _State extends State<PolylineDemoPage> {
_State();
// Values when toggling polyline color

View File

@ -1,27 +1,17 @@
import 'package:amap_map_example/base_page.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:amap_map/amap_map.dart';
import 'package:x_amap_base/x_amap_base.dart';
class PolylineGeodesicDemoPage extends BasePage {
PolylineGeodesicDemoPage(String title, String subTitle)
: super(title, subTitle);
@override
Widget build(BuildContext context) {
return _Body();
}
}
class _Body extends StatefulWidget {
const _Body();
class PolylineGeodesicDemoPage extends StatefulWidget {
const PolylineGeodesicDemoPage();
@override
State<StatefulWidget> createState() => _State();
}
class _State extends State<_Body> {
class _State extends State<PolylineGeodesicDemoPage> {
_State();
// Values when toggling polyline color

View File

@ -1,27 +1,16 @@
import 'package:amap_map/amap_map.dart';
import 'package:amap_map_example/base_page.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:x_amap_base/x_amap_base.dart';
class PolylineTextureDemoPage extends BasePage {
PolylineTextureDemoPage(String title, String subTitle)
: super(title, subTitle);
@override
Widget build(BuildContext context) {
return _Body();
}
}
class _Body extends StatefulWidget {
const _Body();
class PolylineTextureDemoPage extends StatefulWidget {
const PolylineTextureDemoPage();
@override
State<StatefulWidget> createState() => _State();
}
class _State extends State<_Body> {
class _State extends State<PolylineTextureDemoPage> {
_State();
Map<String, Polyline> _polylines = <String, Polyline>{};