如何在Swift中用组合图像创buildGMSMarker

我需要在iOS应用程序中为我的Google地图屏幕创build一个GMSMarker 。 我需要标记为图像的组合,即通用标记图像和用户图像。 例如: 通用标记

在这个标记里面,我需要适合用户的图像。 我的资产中都有图片。 它试过了

 func image(byDrawingImage image: UIImage, inRect rect: CGRect) -> UIImage! { UIGraphicsBeginImageContext(size) draw(in: CGRect(x: 0, y: 0, width: size.width, height: size.height)) image.draw(in: rect) let result = UIGraphicsGetImageFromCurrentImageContext() UIGraphicsEndImageContext() return result } 

但是这又回到了一个不完美的形象。 有没有其他解决scheme? 注意:这里提供的示例标记图像不是我实际使用的那个。 那是一个矩形的标记。

在这里,我提供了一些示例代码,尝试它,它会工作和定制/修改根据您的要求:

 let marker = GMSMarker() let lat = Double("13.063754") let long = Double("80.24358699999993") marker.position = CLLocationCoordinate2DMake(lat!,long!) ///Creating UIView for Custom Marker let DynamicView=UIView(frame: CGRectMake(0, 0, 50, 50)) DynamicView.backgroundColor=UIColor.clearColor() //Creating Marker Pin imageview for Custom Marker var imageViewForPinMarker : UIImageView imageViewForPinMarker = UIImageView(frame:CGRectMake(0, 0, 40, 50)); imageViewForPinMarker.image = UIImage(named:"LocationPin") //Creating User Profile imageview var imageViewForUserProfile : UIImageView imageViewForUserProfile = UIImageView(frame:CGRectMake(0, 0, 35, 35)); imageViewForUserProfile.image = UIImage(named:"userprofile") //Adding userprofile imageview inside Marker Pin Imageview imageViewForPinMarker.addSubview(imageViewForUserProfile) //Adding Marker Pin Imageview isdie view for Custom Marker DynamicView.addSubview(imageViewForPinMarker) //Converting dynamic uiview to get the image/marker icon. UIGraphicsBeginImageContextWithOptions(DynamicView.frame.size, false, UIScreen.mainScreen().scale) DynamicView.layer.renderInContext(UIGraphicsGetCurrentContext()!) let imageConverted: UIImage = UIGraphicsGetImageFromCurrentImageContext() UIGraphicsEndImageContext() marker.icon = imageConverted marker.map = self.mapView