我需要在android中使用mapbox更改map的语言。我在OficialMapboxAndroid应用程序中看到了这一点,但在文档中找不到如何做到这一点。

最佳答案

我在这个应用程序的源代码中找到了问题的答案。
看起来是这样的:

Layer mapText = map.getLayer("country-label-lg");
if (mapText != null) {
  switch (item.getItemId()) {
    case R.id.french:
      mapText.setProperties(textField("{name_fr}"));
      return true;
    case R.id.russian:
      mapText.setProperties(textField("{name_ru}"));
      return true;
    case R.id.german:
      mapText.setProperties(textField("{name_de}"));
      return true;
    case R.id.spanish:
      mapText.setProperties(textField("{name_es}"));
      return true;
    default:
      mapText.setProperties(textField("{name_en}"));
      return true;
    case android.R.id.home:
      onBackPressed();
      return true;
  }

关于android - 如何使用Android SDK更改语言Mapbox,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41718352/

10-09 00:00