我想在Google地图顶部显示一个广告条。将iAd添加到Google地图1.7
因此,我下面的代码:
WPMapViewController.h:
#import <iAd/iAd.h>
....
@interface WPMapViewController : UIViewController<ADBannerViewDelegate, GMSMapViewDelegate>
WPMapViewController.m:
@implementation WPMapViewController {
GMSMapView *mapView_;
ADBannerView *_bannerView;
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
// On iOS 6 ADBannerView introduces a new initializer, use it when available.
if ([ADBannerView instancesRespondToSelector:@selector(initWithAdType:)]) {
_bannerView = [[ADBannerView alloc] initWithAdType:ADAdTypeBanner];
} else {
_bannerView = [[ADBannerView alloc] init];
}
_bannerView.delegate = self;
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
screenSize = [[UIScreen mainScreen] bounds].size;
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:51.7
longitude:10.4
zoom:5.3];
mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];
self.view = mapView_;
mapView_.delegate = self;
_bannerView.frame = CGRectMake(0, screenSize.height - 50, 320, 50);
[self.view addSubview:_bannerView];
}
我猜是因为self.view = mapView_;
的_bannerView.delegate被覆盖。当我运行此代码时,我可以看到广告横幅,但我无法点击它。
当我评论self.view = mapView_;
横幅符合预期,但我看不到地图。
self.canDisplayBannerAds = YES;
不适合我,因为它缩小了地图。
将iAd横幅添加到此UIViewController的正确方法是什么?
这可能是由于子视图继承了superview中的交互属性?你有没有尝试过设置self.view.userInteractionEnabled = YES;并看看是否允许横幅视图触摸? – Jamornh
不,还是没有 –
我是第一个尝试这个吗?或者你需要更多的信息? –