Karten-Apps für Windows Phone 8 im Handumdrehen – Teil 1

Map Control für Windows Phone 8
Map Control für Windows Phone 8

Windows Phone 8 bringt eine reichhaltige Auswahl an neuen Features, die es den App Entwickler ermöglichen, relativ einfach und komfortabel, User Interfaces für mobile, landkartenbasierte Apps zu entwickeln. Schauen wir uns heute die neue API Microsoft.Phone.Maps dazu an. Wichtige Vorraussetzung zur Nutzung der Karten-Funktionen ist die Freigabe der ID_CAP_MAP in der WMAppManifest.xml Datei. Dazu wählt man einfach diese Projektdatei unter Visual Studio an und kann dann über den Reiter Funktionen das Häkchen für diese ID setzen.

Zum Darstellen einer Karte muss man lediglich den Namespace angeben und dann ist es nur noch ein Einzeiler in XAML. Man definiert das Map Control in den gewünschten Layout Container und das war´s:

xmlns:maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"

<grid>
<MAPS:MAP x:Name="WorldMap" />
</grid>

Die Assembly Microsoft.Phone.Maps steht nach der Installation des Windows Phone SDK 8.0 zur Verfügung. Das Map Control kann während der Initialisierung auf eine gewünschte Position zentriert und bereits auf einen bestimmten Kartenausschnitt gezoomt werden. Man möchte dem Anwender schliesslich nicht stets die Weltkarte zu Beginn anzeigen. Die Eigenschaft CartographicMode ermöglicht die Einstellung der Karte auf eine der vier verschiedenen Kartentypen Road, Aerial, Hybrid und Terrain. Cool finde ich die Eigenschaft Pitch, mit der man den Winkel, um die die Karte gekippt wird, einstellen kann.

<MAPS:MAP x:Name="WorldMap"/>Center="50.0, 8.5"
ZoomLevel="10"
CartographicMode="Terrain"
Pitch="50";

Nützliche Erweiterungen gibt es im Windows Phone Toolkit, wie z.B. ein sogenanntes PushPin, einem Control das die einfache Markierung von Lokationen ermöglicht. Für die MapExtensions benötigt man noch folgende Namespace Definition in XAML:

xmlns:mapstk="clr-namespace:Microsoft.Phone.Maps.Toolkit;assembly=Microsoft.Phone.Controls.Toolkit"

<br/>

<MAPS:MAP x:Name="WorldMap"/>Center="50.09, 8.77"
ZoomLevel="13"
CartographicMode="Terrain"
Pitch="50";
<MAPSTK:MAPEXTENSIONS.CHILDREN>
<MAPSTK:PUSHPIN Content="Marktplatz" GeoCoordinate="50.106, 8.763" />
</MAPSTK:MAPEXTENSIONS.CHILDREN>
</MAPS:MAP>

In diesem Blogeintrag habe ich gezeigt, ohne großartige Experten-Kenntnisse die neuen Funktionen der Windows 8 Phone API zur Darstellungen von Karten-Informationen einfach zu nutzen. Ich wünsche viel Spaß beim Erstellen Eurer mobilen Karten-Apps!

Das könnte auch interessant sein...