android - 如何在 MapBox iOS/Android SDK 中使用离线样式定义或 map 瓦片?

标签 android ios xamarin mapbox

我想使用 mapbox iOS/Android SDK 制作离线 map 应用。

但是,我从本地文件系统加载样式,如下所示:(抱歉,我是 Xamarin 用户,所以用 c# 编写)

var bundlePath = NSBundle.MainBundle.BundlePath; 
var filePath = Path.Combine(bundlePath, "gsimaps.json"); 
var styleURL = NSUrl.CreateFileUrl (filePath, null);
var mapView = new MapView (Bounds, styleURL);

然后错误显示:

[ERROR] {Map}[Setup]: loading style failed: response class is not NSHTTPURLResponse

有没有办法从本地数据加载样式? 从文件,从DB,从内存,任何方式都可以,我想知道如何使用本地数据。

还有,有什么方法可以在 MapBox SDK 中使用本地栅格图 block 吗? (来自文件、数据库或内存..)

最佳答案

在安卓中,

首先,在 assets 文件夹中声明一个 map_style.json

然后在 Java 代码中

mapView.setStyleUrl("asset://map_style.json");

关于android - 如何在 MapBox iOS/Android SDK 中使用离线样式定义或 map 瓦片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33590251/

相关文章:

java - Objective-C 到 Java 交叉编译器

android - 应用程序在设备启动时打开崩溃对话框

ios - 如何在键入/编辑时使 UITextView 滚动

android - 在 GridView 适配器 GetView 方法中使用异步方法

c# - 使用 Google Play 服务在 Xamarin 中获取用户位置

java - 数组的 IndexOutOfBounds

Android 应用程序和测试不工作

ios - 将 MultipeerConnectivity Framework 与 WiFly 模型一起使用?

ios - Controller 如何实现通知功能?

android - 如何从 Xamarin Android 应用程序调用 MVC 网络 Controller