2017-09-05 6 views
2

Weiß jemand, ob es möglich ist, Beschriftungen der Kartenobjekte mit Carto Mobile SDK zu lokalisieren? Und wenn es möglich ist, wie kann ich es erhalten?Kartenlokalisierung in Carto Mobile SDK

Zum Beispiel würde ich gerne "Kasachstan" anstelle von "Казахстан" sehen, jedoch hängt die Beschriftung über den Objekten von der Landessprache ab, in der sich das Objekt befindet. Ich möchte, dass es in Englisch lokalisiert wird. Click the link to see screenshot.

Nur für den Fall, dass es nützlich ist und helfen kann: Ich benutze Xamarin.iOS Plattform. Version von Carto Mobile SDK - 4.0.2.

Vielen Dank im Voraus.

Antwort

1

CartoVectorTileLayer (beide CartoOnlineVectorTileLayer und CartoOfflineVectorTileLayer sind Subklassen davon) hat Methode setLanguage (String) für sie, so z.B .:

layer.setLanguage("en"); 

finden Sie in englischer Sprache Karten geben.

In SDK 4.0.2 SDK und nutiteq.osm Kachel Quellen Sie folgende Sprachen verwenden: local/default (geben Казахстан in Ihrem Fall), en, es, de, fr, es, ru, zh (Chinesisch), tr (Türkisch) und et (estnisch) als Sprache

Von CARTO SDK 4.1.0 und neue carto.streets Quelle können Sie OSM Sprache verwenden. Ich würde vorschlagen, Karte basierend auf Gerät Spracheinstellungen zu konfigurieren, mit etwas wie:

// Android 
layer.setLanguage(Locale.getDefault().getLanguage()); 

// iOs/Xamarin 
layer.Language = Foundation.NSLocale.PreferredLanguages[0].Substring(0, 2); 

Was ist, wenn spezifischer Name nicht in der angegebenen Sprache verfügbar ist? Dann wird die MapView standardmäßig auf die 'lokale' Sprache zurückgreifen, die Map wird nicht leer sein. Aber wenn die "lokale" Sprache immer noch nicht lesbar ist, würde ich lateinische Buchstaben bevorzugen? In SDK 4.1.0 können Sie primäre und sekundäre Fallback-Sprachen konfigurieren, z. Du legst die Hauptsprache auf "de" für Deutsche, um dann seltsame Alphabete zu vermeiden (sprich Hebräisch, Griechisch, den größten Teil Asiens) setze 'en' als primären Rückfall; Dann wird local nur verwendet, wenn sowohl Ihr primärer als auch Ihr englischer Name fehlt.

Verwandte Themen