我尝试使用SKMaps中的国际化设置已有一段时间,但是它们似乎只对城市而非街道的标签产生影响。

F.ex.在泰国,外国人无法完全理解该字母,但几乎所有街道名称仍显示在泰国字母中。我已粘贴处理相关设置的代码。任何想法可能有什么问题吗?

let languageSettings = SKMapInternationalizationSettings.mapInternationalization()
languageSettings.backupToTransliterated = true
languageSettings.primaryInternationalLanguage = SKLanguage.MapLanguageEN
languageSettings.fallbackInternationalLanguage = SKLanguage.MapLanguageDE
languageSettings.primaryOption = SKMapInternationalizationOption.International
languageSettings.fallbackOption = SKMapInternationalizationOption.Transliterated
mapView.settings.mapInternationalization = languageSettings

更新:

尽管这些选项不适用于街道名称,如下面的答案中所述,但一种解决方法是以拉丁字母显示街道名称是使用“精简版”地图。这是在初始化部分完成的:
let initSettings: SKMapsInitSettings = SKMapsInitSettings()
initSettings.mapDetailLevel = SKMapDetailLevel.Light;
SKMapsService.sharedInstance().initializeSKMapsWithAPIKey(apiKey, settings: initSettings)

感谢SKMaps专家指出这一点!

最佳答案

目前,音译选项仅影响城市标签和POI标签,但尚未影响街道。

这是我们为将来的SDK更新所评估的功能之一。

08-05 22:19