如何将Google Map放入自定义UIView中

Ced*_*ger 2 xcode google-maps uiview

我知道之前已经问过这个问题了,但是没有一个答案对我来说非常清楚,而且我无法在互联网上找到好的教程......所以,我想把谷歌地图放在一个不同的UIView中.为了能够在顶部显示我的菜单栏.

这是我的实际代码:

#import "MapViewController.h"
#import <GoogleMaps/GoogleMaps.h>

@implementation MapViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:46.809885
                                                            longitude:-71.184556
                                                                 zoom:18];
    mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
    self.view = mapView;
    mapView.mapType = kGMSTypeHybrid;

}

@end
Run Code Online (Sandbox Code Playgroud)

实际上,地图遍布应用程序.它已经将我的UIView类设置为GMSKMapView并创建了一个插座名称mapView来链接我的UIView和控制器.

我使用Xcode 4.6.2

谢谢您的帮助!

Ton*_*enu 5

我正在使用此代码:

//头文件

@property (strong, nonatomic) IBOutlet UIView *viewForMap;
@property (nonatomic, strong) IBOutlet GMSMapView *mapView;
@property (nonatomic, strong) IBOutlet GMSCameraPosition *camera;
Run Code Online (Sandbox Code Playgroud)

//实施文件

 self.camera = [GMSCameraPosition cameraWithLatitude:46.2220
                                          longitude:25.2330 zoom:5
                                            bearing:0
                                       viewingAngle:0
               ];

    self.mapView = [GMSMapView mapWithFrame:_viewForMap.bounds camera:_camera];
    self.mapView.delegate = self;

    [self.viewForMap addSubview:_mapView];
Run Code Online (Sandbox Code Playgroud)

UPD

更改地图类型:

self.mapView.mapType = kGMSTypeHybrid; //kGMSTypeNormal kGMSTypeHybrid kGMSTypeSatellite kGMSTypeTerrain
Run Code Online (Sandbox Code Playgroud)

再次更改相机视图:

_mapView.camera = [GMSCameraPosition cameraWithLatitude:newLat
                                                  longitude:newLong
                                                       zoom:1
                                                    bearing:0
                                               viewingAngle:0
                       ];
Run Code Online (Sandbox Code Playgroud)

不要忘记添加头文件:

<GMSMapViewDelegate>
Run Code Online (Sandbox Code Playgroud)