我如何使用 NativeScript 和 Angular2 在 MapView 上创建一个指针?

How I make a pointer over the MapView with NativeScript and Angular2?

我的经度和纬度位置正在工作,但我需要在那里做一个指针,可以吗?我正在为 Google Maps SDK (nativescript-google-sdk)

使用 NativeScript、Angular2 和 NativeScript 插件

file.ts

import { registerElement } from 'nativescript-angular/element-registry'; 
registerElement("MapView", () => require("nativescript-google-maps-sdk").MapView);

file.xml

<MapView [latitude]="configService.unitPreview.latitude" [longitude]="configService.unitPreview.longitude"
                            zoom="17" bearing="0"
                            tilt="0" (mapReady)="OnMapReady"
                            (markerSelect)="onMarkerSelect"
                            (cameraChanged)="onCameraChanged">
                </MapView>

map_without_pointer

map_with_pointer

您可以使用addMarker方法在地图中添加标记。您可以在下面查看我的示例,其中已显示的位置以及如何执行此操作。

app,component.html

 <GridLayout>
        <MapView (mapReady)="onMapReady($event)"  ></MapView> 
 </GridLayout>

app.com-ponent.ts

import {Component, ElementRef, ViewChild} from '@angular/core'; 
var mapsModule = require("nativescript-google-maps-sdk");


@Component({
    selector: "my-app",
    templateUrl: "app.component.html",
})
export class AppComponent {

    @ViewChild("MapView") mapView: ElementRef;
    constructor(){

    }
    //Map events
    onMapReady = (event) => {
        console.log("Map Ready");
        var map =event.object;
        var marker = new mapsModule.Marker();
        marker.position = mapsModule.Position.positionFromLatLng(48.87, 2.35);
        marker.title = "Sydney";
        marker.snippet = "Australia";
        marker.userData = { index : 1};
        map.addMarker(marker);
    };
}

是否可以像下图那样显示真实的流量?

traffic_real_time.png