IOS谷歌地图sdk中的自定义信息窗口
作为一名新的IOS开发人员,我真的很难找到基本的工作。
我需要在谷歌地图sdk for ios上点击标记时显示这种自定义信息窗口。
任何帮助,将不胜感激。
我已经看过第三方组件,但即使有了它们,我也无法显示它。 总是有标题,片段,左图像和右图像部分。 真正的问题是如何在窗口中获得金星评级,旁边有文字。
我在GoogleMapsSdk for iOS中遇到了同样的问题窗口自定义问题很多天,感到很沮丧并且做到了我自己!
清洁,完全可自定义和自己的UIControls与您的自定义操作代码可以在Github上找到这里
快乐编码:)
根据需要制作Xib …设置文本和图像
设置委托GMSMapViewDelegate
-(UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker{ CustomInfoWindow *infoWindow=[[[NSBundle mainBundle] loadNibNamed:@"InfoWindow" owner:self options:nil] objectAtIndex:0]; return infoWindow; }
https://www.youtube.com/watch?v=ILiBXYscsyY获取更多帮助,请看这个video..由谷歌开发
最后使用SMCalloutView @ https://github.com/nfarina/calloutview
Swift 3.0解决方案
Google Map CustomInfoWindow
//empty the default infowindow func mapView(_ mapView: GMSMapView, markerInfoWindow marker: GMSMarker) -> UIView? { return UIView() } // reset custom infowindow whenever marker is tapped func mapView(_ mapView: GMSMapView, didTap marker: GMSMarker) -> Bool { customInfoView.removeFromSuperview() // customInfoView.button.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside) self.view.addSubview(customInfoView) // Remember to return false // so marker event is still handled by delegate return false } // let the custom infowindow follows the camera func mapView(_ mapView: GMSMapView, didChange position: GMSCameraPosition) { if (locationMarker != nil){ let location = locationMarker.position customInfoView.center = mapView.projection.point(for: location) } } // take care of the close event func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D) { customInfoView.removeFromSuperview() }
- 保存和加载数据在今天扩展(iOS 8)
- 在gameOverScene上与admob插播广告
- 如何使用数据库中的键将对象添加到NSArray?
- 如何在iOS中的UIWebView中操作DOM
- dyld:Library未加载:@ rpath / Alamofire.framework / Versions / A / Alamofire原因:找不到图像
- 在AppDelegate中使用Swift UINavigationBar setBackgroundImage
- Autolayout的UIViewPropertyAnimator问题
- 集中UIButton的标题,如Swift中的Image下所示
- ld:找不到-lz.1.2.3的库