Flutter:如何将 mylocation 按钮放在 Google Maps 上的不同位置?
Posted
技术标签:
【中文标题】Flutter:如何将 mylocation 按钮放在 Google Maps 上的不同位置?【英文标题】:Flutter: How to place the mylocation button on Google Maps at different positions? 【发布时间】:2020-05-08 07:17:51 【问题描述】:我使用的是 Google 地图,默认情况下,myLocation 按钮显示在右上角。我想要它在右下角。 我似乎在 GoogleMap 小部件中没有任何属性
GoogleMap(
myLocationEnabled: true,
myLocationButtonEnabled: true,
initialCameraPosition: CameraPosition(
target: _currentLocation,
zoom: 11.0,
),
onMapCreated: _onMapCreated,
),
【问题讨论】:
【参考方案1】:尝试使用 FloationgButton
GoogleMap(
mapType: MapType.hybrid,
initialCameraPosition: _kGooglePlex,
onMapCreated: (GoogleMapController controller)
_controller.complete(controller);
,
myLocationEnabled: true,
),
floatingActionButton: FloatingActionButton.extended(
onPressed: _currentLocation,
label: Text('My Location'),
icon: Icon(Icons.location_on),
),
);
也用当前位置设置
void _currentLocation() async
final GoogleMapController controller = await _controller.future;
LocationData currentLocation;
var location = new Location();
try
currentLocation = await location.getLocation();
on Exception
currentLocation = null;
controller.animateCamera(CameraUpdate.newCameraPosition(
CameraPosition(
bearing: 0,
target: LatLng(currentLocation.latitude, currentLocation.longitude),
zoom: 17.0,
),
));
【讨论】:
我使用了您代码中的 controller.animateCamera 来适应我的代码,并且效果很好。干杯!它提供了更多的控制。但与此同时,奇怪的是,我们没有使用 GoogleMap 小部件本身进行开箱即用的控制。以上是关于Flutter:如何将 mylocation 按钮放在 Google Maps 上的不同位置?的主要内容,如果未能解决你的问题,请参考以下文章
如何在Google地图上自定义myLocationEnabled按钮?
如何将 http://localhost:9000 配置为 http:/mylocal.loc
如何在启用 MyLocation 的情况下使用 moveCamera 时忽略 GPS 位置更改
Android Google Maps v2 - 为 myLocation 设置缩放级别