java - 华为mapStyle未正确应用

标签 java android huawei-mobile-services huawei-developers huawei-map-kit

我正在尝试为我的应用程序添加 map 样式到华为 map 。我从华为 map 样式编辑器制作了一个样式的 JSON 文件,并通过 MapStyleOptions.loadRawResourceStyle 在 setMapStyle 方法中使用它并传递 JSON 文件。我使用了华为简单的 map 并为其添加了一些自定义样式。当我第一次打开应用程序时,会加载默认 map (简单)并且不应用来自 JSON 的自定义样式,但我返回上一个屏幕并再次启动 map 屏幕,然后正确应用来自 JSON 的样式。首次启动如何解决问题?

最佳答案

首先你可以关注this development documents所有步骤:setMapStyle方法MapStyleOptions.loadRawResourceStyle并传递 JSON 文件,这是加载本地 map 。
要解决此问题需要更改云加载 mapstyle ,请参阅上述文档的第 5 步:
创建 map 后使用自定义样式
调用setStyleIdpreviewId HuaweiMap 中的方法来使用自定义 map 样式。
示例代码如下:

HuaweiMap hMap;
// Specify a style ID after a map is created.
hMap.setStyleId(String styleId);
// Specify a preview ID after a map is created.
hMap.previewId(String previewId);
在创建 map 之前使用自定义样式
调用styleIdpreviewId HuaweiMapOptions 中的方法使用自定义 map 样式。如果两者都是 styleIdpreviewId已设置,styleId优先。
示例代码如下:
HuaweiMapOptions huaweiMapOptions;
// Specify a style ID before a map is created.
huaweiMapOptions.styleId(String styleId);
// Specify a preview ID before a map is created.
huaweiMapOptions.previewId(String previewId);
上面的使用方法会第一次改变云图。

关于java - 华为mapStyle未正确应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68906169/

相关文章:

java - JNDI 没有可用于处理的 EJB 接收器

android - aChartEngine,如何从图表中获取值

android - 无法从 Android 设备访问本地主机 Web 服务

java - "getIntent()"- 它是如何工作的

java - HMS Map Kit - 如何将相机缩放设置为当前位置?

java - 如何在java中打开另一个目录中的文件?

java - 在android java中更新json文件JSONObject

java - JPA、继承和instanceof

android - 使用华为应用服务依赖项时在 Android 12 上崩溃,使用构建工具 31

android - HMS Core APK 在 x86 上安装和运行