我正在使用Xcode 7.0的发布版本构建.没有故事板,只有nib文件.
我有一个UINavigationController由app delegate创建并使用视图控制器初始化它.
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UIViewController *viewController = [[TGMainViewController alloc] initWithNibName:nil bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
self.navigationController.navigationBar.hidden = YES;
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)
使用以下方法导航到新视图后:
TGRoutePreparationViewController *viewController = [[TGRoutePreparationViewController alloc] initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:viewController animated:YES];
Run Code Online (Sandbox Code Playgroud)
然后回去使用:
[self.navigationController popViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Attempting to load the view of a view controller while it is deallocating is not allowed and may result in undefined behavior (<UIAlertController: 0x7b29a600>)
Run Code Online (Sandbox Code Playgroud)
虽然我UIAlertController在应用程序中使用s,但在收到此错误之前没有使用或实例化.这仅在iOS 9.0下运行时才会发生.在iOS 8.4下运行不会产生错误.在所有情况下,应用程序似乎正常运行,导航似乎正在工作. …
有没有办法更改mapbox-gl-js图标图像颜色?
此代码取自https://www.mapbox.com/mapbox-gl-js/example/geojson-markers/,不会将标记颜色更改为红色
map.addLayer({
"id": "markers",
"type": "symbol",
"source": "markers",
"layout": {
"icon-image": "{marker-symbol}-15",
"text-field": "{title}",
"text-font": ["Open Sans Semibold", "Arial Unicode MS Bold"],
"text-offset": [0, 0.6],
"text-anchor": "top"
},
"paint": {
"text-size": 12,
"icon-color" : "#ff0000"
}
});
Run Code Online (Sandbox Code Playgroud)
我已经尝试了官方文档中列出的所有选项
我正在使用Mapbox-GL构建一个映射Web应用程序.它有很多很酷的功能.我按照Mapbox网站上的示例设置按钮来切换基本地图(即卫星,地形等).
我遇到的问题是,当我更改样式时,它会删除作为图层加载的多边形并重新加载地图.我从Mongo数据库加载多边形作为基于用户查询的图层.我希望能够更改基本地图并保留这些图层.
有没有办法在不重新加载地图的情况下更改样式,或者至少不丢弃图层?
这是我的切换器代码,它与示例相同,但我添加了自定义样式的条件:
var layerList = document.getElementById('menu');
var inputs = layerList.getElementsByTagName('input');
function switchLayer(layer) {
var layerId = layer.target.id;
if (layerId === 'outdoors') {
map.setStyle('/outdoors-v8.json');
} else {
map.setStyle('mapbox://styles/mapbox/' + layerId + '-v8');
}
}
for (var i = 0; i < inputs.length; i++) {
inputs[i].onclick = switchLayer;
}
Run Code Online (Sandbox Code Playgroud) 有没有办法在离线设置中使用Mapbox GL(询问JS和本机)?使用MBTiles,您可以使用MBTiles文件或提取光栅图像.我想知道是否有类似的东西允许Mapbox GL从本地源加载数据而不是需要与Mapbox服务器的Web连接.不是谈论只是在用户离线时缓存数据,而是实际制作一个始终完全脱机运行的地图.谢谢.
我的应用程序使用Geojson文件.我使用MapBox SDK添加MGLPolyline到地图.但问题是我的文件太大,以至于应用程序崩溃并收到错误:Message from debugger: Terminated due to memory issue.我在第一次循环时面对66234个对象.我试图将数组块化为新数组,但没有成功.请帮我解决问题.这是我在地图上绘制的代码,这里是我在github上的测试项目使用Xcode 8.1 如果有任何不同的第三方可以解决我的问题,也欢迎:
func drawPolyline() {
// Parsing GeoJSON can be CPU intensive, do it on a background thread
DispatchQueue.global(qos: .background).async {
// Get the path for example.geojson in the app's bundle
let jsonPath = Bundle.main.path(forResource: "KMLMAPNew", ofType: "json")
let jsonData = NSData(contentsOfFile: jsonPath!)
do {
// Load and serialize the GeoJSON into a dictionary filled with properly-typed objects
guard …Run Code Online (Sandbox Code Playgroud) 我正在使用 Mapbox GL 显示地图并从其中心裁剪固定大小的图像。它适用于我设计的特定分辨率(1920x1080),但是当我开始使页面响应地图样式width和height更改时,画布大小也开始更改!
因此,当我裁剪图像时,大小应该始终不同,因为 900 像素画布上的 300 像素与 2000 像素画布上的 300 像素不同。如果我在 Chrome 中将设备类型从桌面更改为移动,画布大小甚至会发生巨大变化。
有什么方法可以使画布 DOM 大小固定,同时使用 CSS 属性缩放整个地图,就像在正常情况下所做的那样canvas?我尝试这样做trackResize: false并且画布 DOM 大小保持固定,但地图也没有缩放以适应容器。
我创建了一个自定义圆圈图层.我想只在水面而不是陆地上展示这一层.我设法使用下面的命令做相反的事情(即:在陆地上而不是在水面上显示图层).请参阅此图片以便更好地理解
map.moveLayer( '多边形', '水');
现在我需要知道mapboxgl使用的land层,以便我可以调用函数map.moveLayer('polygon','land');来实现我想要的.
我需要帮助才能找到mapboxgl-streets地图中的不同图层.但不幸的是,Mapboxgl没有map.eachLayer函数.
我想在我的Android应用程序中使用Mapbox GL.这项服务即将发布,我有一个关于使用渲染器的棘手问题.
我喜欢渲染器本身,但我真的想在应用程序中使用我自己的地图数据(而不是Mapbox提供的数据和支付的数据).例如,我想自己解析OpenStreetMaps数据,以某种方式自定义它,然后放入渲染器内部以在我的应用程序中显示它.
现在问题是:使用Mapbox GL时是否可以使用我自己的地图数据?或者它只能用于Mapbox数据?
预先感谢您的任何帮助.也许你知道其他任何做得好的解决方案吗?问题是,我想要矢量图块,而不是光栅图块.这个项目计划在以后为iOS开发.
我想知道是否有办法查询未在地图上显示的要素.
两者都有效queryRenderedFeatures,querySourceFeatures仅在地图上显示要素时才有效.
我还尝试使用setLayoutProperty可见性和使用隐藏功能setFilter.查询时两者都不返回功能.
工作mapboxgl与ionic3,angular4和科尔多瓦.
我已经构建了.apk和.ipa文件.我在我的Android设备上安装了.apk文件,它按预期工作(ie mapbox tiles, my icons (I have added some icons to custom some functionalities for eg. added an icon to switch the map style) and my markers are loaded successfully).
当我在我的Iphone中安装.ipa文件时,我的图标只加载但mapbox图块没有加载.也是标记.我得到空白的白色屏幕.
我的实施有什么问题?
let data = {myJson data};
mapboxgl.accessToken = 'My access token';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v9',
attributionControl: false,
center: [-74.50, 40],
zoom: 12
});
map.on('load', function () {
map.addSource("place", {
type: "geojson",
data: data,
cluster: true,
clusterMaxZoom: 14, …Run Code Online (Sandbox Code Playgroud) mapbox-gl ×10
mapbox-gl-js ×8
mapbox ×5
ios ×3
swift ×2
android ×1
javascript ×1
xcode ×1
xcode7 ×1