首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在NativeScript应用程序中添加标记映射

在NativeScript应用程序中添加标记映射
EN

Stack Overflow用户
提问于 2017-01-30 09:30:13
回答 2查看 898关注 0票数 2

我正在使用NativeScript构建一个nativescript-google-maps-sdk应用程序。

我已经为coordinateTapped事件添加了一个事件侦听器,现在是工作的,我想在地图上的点击位置绘制一个标记。

我在网上或sdk文档中找不到这方面的例子。我觉得我是非常接近,只是有一些小的纠正。

代码语言:javascript
复制
var mapsModule = require("nativescript-google-maps-sdk");

function onCoordinateTapped(args) {
    console.log("coordinate tapped!");
    var mapView = args.object;
    var marker = new mapsModule.Marker();
    marker.position = mapsModule.Position.positionFromLatLng(args.latitude,args.longitude);
    mapView.addMarker(marker);
}

注意:,我已经用google-maps标签给这个问题贴上了标签,因为没有nativescript-google-maps标签。

EN

回答 2

Stack Overflow用户

发布于 2019-03-10 01:19:03

回答这样的问题永远不会太晚。

问题是,args对象没有latitudelongitude属性,因此您试图添加一个标记,其纬度和经度为undefined

在函数onCoordinateTapped(args)中,您可以访问两个不同的位置。

首先是args.object.latitudeargs.object.longitude

代码语言:javascript
复制
var lat = args.object.latitude;
var lng = args.object.longitude;

这些属性表示映射的当前位置(您知道,它的中心)。

第二,args.position.latitudeargs.position.longitude

代码语言:javascript
复制
var lat = args.position.latitude;
var lng = args.position.longitude;

在这种情况下,这些属性表示您的点击在地图上的实际位置。

而且,这也适用于coordinateLongPress

票数 2
EN

Stack Overflow用户

发布于 2017-01-30 15:14:13

嘿@Danoram,您的代码看起来‘n’很好,虽然没有XML文件,但我想您已经使用coordinateEvent传递了onCoordinateTapped函数,比如这里

代码语言:javascript
复制
<maps:mapView coordinateTapped="onCoordinateTapped" />

这对你有好处吗?还是你正经历着某种错误或意外的行为?从你的帖子中还不完全清楚问题在哪里.

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

https://stackoverflow.com/questions/41932538

复制
相关文章

相似问题

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