补充地图的演示功能

This commit is contained in:
2025-11-24 14:49:07 +08:00
parent 38d08ad613
commit 9e8df74622
12 changed files with 599 additions and 16 deletions

View File

@@ -1,4 +1,4 @@
import 'package:flutter/material.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:getx_scaffold/getx_scaffold.dart';
import 'controller.dart';
@@ -6,11 +6,32 @@ import 'controller.dart';
class MapPage extends GetView<MapController> {
const MapPage({super.key});
// 主视图
Widget _buildView() {
return <Widget>[
TextX.titleLarge('地图'),
].toColumn(mainAxisSize: MainAxisSize.min).center();
return Stack(
children: [
InAppWebView(
// 确保 pubspec.yaml 中声明了 assets/html/map.html
initialFile: 'assets/html/map.html',
initialSettings: InAppWebViewSettings(
isInspectable: true,
geolocationEnabled: true,
// 允许 JS 弹窗 (Alert) 用于调试
javaScriptCanOpenWindowsAutomatically: true,
),
onWebViewCreated: (c) {
controller.webViewController = c;
},
onLoadStop: (c, url) {
// 通知 Controller 页面加载完毕
controller.onWebViewLoadStop();
},
onConsoleMessage: (controller, consoleMessage) {
// 方便在 Flutter 控制台看 JS 日志
print("JS Log: ${consoleMessage.message}");
},
),
],
);
}
@override