Tag: google maps sdk ios

如何在谷歌地图添加标记的地图视图sdk for iOS在Swift中

试图向Google地图添加标记,但是应用程序在addMarker()函数调用时addMarker() ,Exception的详细信息如下, 由于未捕获exception“ GMSThreadException ”而终止应用程序,原因是:“所有对iOS版Google地图SDK的调用必须由UI线程调用” FYI vwGogleMap是全球性的,我正在尝试绘制标记。 func addMarker() -> Void { var vwGogleMap : GMSMapView? var position = CLLocationCoordinate2DMake(17.411647,78.435637) var marker = GMSMarker(position: position) marker.title = "Hello World" marker.map = vwGogleMap } 任何帮助,将不胜感激, TIA。

自定义InfoWindow标记谷歌地图SDK,Swift 2.0

我试图在Swift 2.0中实现这个( https://www.youtube.com/watch?v=ILiBXYscsyY)Custom InfoWindow教程。 我试图通过混合匹配Objective-C和Swift代码来做到这一点,但我一直在翻译不成功 – (UIView *) mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker { CustomInfoWindow *infoWindow = [[[NSBundle MainBundle] loadNibNamed:@"InfoWindow" owner:self options:nil] objectAtIndex:0]; infoWindow.name.text = @"Syndey Opera House"; infoWindow.address.text = @"Bennelong Point, Sydney"; infoWindow.photo.image = [UIImage imageNamed:@"SydneyOperaHouseAtNight"]; return infoWindow; } 进入Swift。 本教程的这一部分可以在video的3:07find。 我想在将本教程翻译成Swift 2.0方面有所帮助,或者如果有人知道Swift 2.0的一个很好的教程,将不胜感激。

当我打开我在Xcode 4中创build的Google Maps项目时,Xcode 5会警告我的架构设置

我刚刚更新到新发布的Xcode 5.我有一个iOS应用程序正在开发中,使用Google Maps iOS SDK。 当我在Xcode 4中开发时,我改变了我的项目设置中的Architectures设置,按照Google 关于将SDK添加到项目中的步骤7: 7.select您的项目,而不是特定的目标,然后打开“生成设置”选项卡。 用armv7replace架构的默认值。 在Other Linker Flags部分中,添加-ObjC。 如果这些设置不可见,请将“生成设置”栏中的filter从“基本”更改为“全部”。 在Xcode 4中一切正常。但是,当我在Xcode 5中打开项目时,在问题导航器中看到以下警告: validation项目设置 更新为推荐设置 当我点击警告,Xcode带我到我的项目设置,并显示一个popup与“取消”和“执行更改”button,以下描述的变化,它想使 项目“你的项目” – 自动select体系结构 项目“您的项目”覆盖“体系结构”设置。 这将删除设置,并允许Xcode基于可用于活动平台和部署目标的硬件自动select体系结构。 我试着点击“执行变更”,让Xcode做任何想做的事情,而且这个应用程序对于模拟器来说还是很好的。 但是,当我尝试插入iPhone 5(支持ARMv7S)并在其上运行时,应用程序无法生成以下链接器错误: Ld /Users/macmini/Library/Developer/Xcode/DerivedData/Your_App-bmrouudjlblpafdjzhpwcuekzgwu/Build/Products/Debug-iphoneos/Your\ App.app/Your\ App normal armv7s cd "/Users/macmini/Documents/Your App" setenv IPHONEOS_DEPLOYMENT_TARGET 6.1 setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -L/Users/macmini/Library/Developer/Xcode/DerivedData/Your_App-bmrouudjlblpafdjzhpwcuekzgwu/Build/Products/Debug-iphoneos -F/Users/macmini/Library/Developer/Xcode/DerivedData/Your_App-bmrouudjlblpafdjzhpwcuekzgwu/Build/Products/Debug-iphoneos -F/Users/macmini/Documents/Your\ App -filelist /Users/macmini/Library/Developer/Xcode/DerivedData/Your_App-bmrouudjlblpafdjzhpwcuekzgwu/Build/Intermediates/Your\ App.build/Debug-iphoneos/Your\ […]

search栏点击后消失

我试图使用谷歌地图实现search附近的地方。 下面是我到目前为止所做的代码 override func viewDidLoad() { super.viewDidLoad() //Adding Mapview mapView = GMSMapView(frame: CGRectMake(0, 120, self.view.bounds.width, self.view.bounds.height – 120)) self.view.addSubview(mapView) mapView.mapType = kGMSTypeNormal locationManager.delegate = self locationManager.requestWhenInUseAuthorization() let resultTableView = UITableView(frame: CGRectMake(10, 100, 300, 60)) self.searchResultController = UITableViewController() self.searchResultController?.tableView = resultTableView self.searchResultController?.tableView.dataSource = self self.searchResultController?.tableView.delegate = self self.searchResultController?.tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell") self.searchController = UISearchController(searchResultsController: self.searchResultController) self.searchController?.searchResultsUpdater = […]

在Google Maps SDK for iOS上执行GMSMapView的屏幕截图

当我尝试拍摄GMSMapView(Google Maps SDK iOS)的任何部分时,我正在努力的一个项目。 UIGraphicsGetImageFromCurrentImageContext()UIImage输出是不可见的。 我最终发现,GMSMapView是用OpenGL渲染的。 知道这一点,我试图使用glReadPixels()方法。 令人不安的是,我能够在iPhone模拟器上检索地图屏幕截图,但是当我在真实设备上使用同样的方法时,它仍然是不可见的(iOS 6)。 我想知道是否有人遇到同样的问题? 我已经做了我的调查份额。 我找不到与我的情况有关的任何事情。 我发现的大多数通用解决scheme都说我应该更新一些CAEAGLLayer属性。 我认为GMSMapView会限制我find适当的层,但是我能够find并更新CAEAGLLayer,如下所示: [(CAEAGLLayer *)[[[mapView_ subviews] objectAtIndex:0] layer] setOpaque: NO]; [(CAEAGLLayer *)[[[mapView_ subviews] objectAtIndex:0] layer] setDrawableProperties:[NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:YES],kEAGLDrawablePropertyRetainedBacking,kEAGLColorFormatRGBA8, kEAGLDrawablePropertyColorFormat,nil]]; 论坛build议通过将图层的OPAQUE属性设置为NO,并将保留的后台属性设置为YES,可以缓解iOS 6问题。 它确实在模拟器上,但不是设备。 我偶然发现的最后一个修复程序说要将主OpenGL视图的preserveBackBuffer更新为YES。 这是我的技术专长结束的地方。 我一直无法find在哪里或如何更新GMSMapView的preserveBackBuffer值。 我假设这是修复所有我的屏幕捕获问题的修复。 似乎只是运行iOS 6 +的设备的一个问题。 有没有人有这个问题的testing解决方法?

如何在谷歌地图iOS Swift中的两个位置之间绘制路线

我在我的iOS Swift项目中使用谷歌地图。 我想绘制地图上两个位置之间的path(不是直线)。 任何想法如何做到这一点?

用Swift构buildCocoapod并依赖于Objective-C框架

我知道在这方面已经有几个关于这个主题的问题了,但是很less有人接受答案,我不认为我发现了和我一样的问题。 我正在构build一个Swift窗格,在我的代码中,我依赖于Google Maps iOS SDK,它被捆绑为一个.framework文件。 该项目在Xcode中生成确定,但是我有麻烦发布lib到Cocoapods。 我设法有一个Podspec文件几乎validation使用pod lib lint命令。 但是,现在我已经在Podspec文件中添加了Google-Maps-iOS-SDK pod作为依赖Podspec ,它将失败并显示以下消息: $ pod lib lint [Pod]目标具有包含静态二进制文件的传递依赖关系:(/ private / var / $ 这是预期的吗? 为什么我不能在我自己的基于Swift的窗格中添加Google Maps iOS SDK作为窗格参考? 这是Podspec : Pod::Spec.new do |s| s.name = '(name)' s.version = '1.0.0' s.summary = '(summary)' s.platforms = { :ios => '8.0', :osx => '10.10' } s.ios.deployment_target = '8.0' s.osx.deployment_target […]

Google地图中的当前位置

我试图在Google地图上显示用户的当前位置,但在下面的情况下,地图甚至不显示。 我应该改变什么来解决这个问题? var locationManager = CLLocationManager() override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. //user location stuff locationManager.delegate = self locationManager.requestWhenInUseAuthorization() locationManager.desiredAccuracy = kCLLocationAccuracyBest locationManager.startUpdatingLocation() } func locationManager(manager: CLLocationManager, didFailWithError error: NSError) { print("Error" + error.description) } func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { let userLocation = locations.last let […]

如何把谷歌MapView的UIView?

我试图把谷歌地图在UIView但我什么都没有显示。 我的代码, *。H #import <UIKit/UIKit.h> #import <GoogleMaps/GoogleMaps.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UIBarButtonItem *btnLocate; @property (weak, nonatomic) IBOutlet GMSMapView *mapView_; @property (weak, nonatomic) IBOutlet UIView *mapView; @end * .M GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86 longitude:151.20 zoom:6]; self.mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera]; self.mapView_.myLocationEnabled = YES; self.mapView = self.mapView_; 谢谢。 解 GMSCameraPosition *camera = […]

Google地图在iOS中闪烁

我使用Google地图SDK for iOS版本:1.10.17867.0在我的应用程序中通过pod。 但是当我在特定位置初始化地图时,所有的标题和地图开始闪烁。 示例代码(swift): import UIKit import GoogleMaps class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() self.view.backgroundColor = UIColor.whiteColor(); var camera = GMSCameraPosition.cameraWithLatitude(19.0176147, longitude: 72.8561644, zoom:18) // even try this: 28.6469655, longitude: 77.0932634, zoom:10 var mapView = GMSMapView.mapWithFrame(CGRectZero, camera:camera) var marker = GMSMarker() marker.position = camera.target marker.snippet = "Hello World" marker.appearAnimation = kGMSMarkerAnimationPop […]