首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flutter google map ontap

Flutter google map ontap
EN

Stack Overflow用户
提问于 2020-06-16 02:59:37
回答 1查看 424关注 0票数 0

我对Flutter还是个新手。这真是太神奇了。我正在开发谷歌地图的小应用程序usign。我有6个点(标记),需要识别哪个被选中。我已经将ontap事件添加到每个带有i-index (i = 0..5)的标记中。当我点击/点击标记时,我总是得到6。根据标记,它应该是0..5。

谢谢你,加布里埃尔

代码语言:javascript
复制
i=0;
marker.clear();
for (myPoint mar in globals.historia.items) {
  print(i.toString());
  marker.add(Marker(
    markerId: MarkerId(i.toString()),
    position: mar.pos,
    draggable: false,
    consumeTapEvents: true,
    onTap: () {
      print("Marker_id-${i.toString()}");
    },
  ));
  i++;
}

GoogleMap( onMapCreated:_onMapCreated,initialCameraPosition: CameraPosition(目标: myposition,缩放: 17.0,),折线:道路,标记:Set.of(标记),

代码语言:javascript
复制
   )
EN

回答 1

Stack Overflow用户

发布于 2020-06-16 03:52:09

我提出了这个解决方案-将onTap中的方法替换为以下内容:print("Marker_id-${globals.historia.items.indexOf(mar)}")

marfor in循环中的一个局部变量,它的值永远不会改变,所以他会指向相同的值,onTap就会像你想要的那样工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62395094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档