2012-04-22 66 views
2

我已经在各地搜索了很多答案。如何在iPhone屏幕顶部显示Admob?

// 
// GADAdSize.h 
// Google Ads iOS SDK 
// 
// Copyright 2012 Google Inc. All rights reserved. 
// 
// A valid GADAdSize is considered to be one of the predefined GADAdSize 
// constants or a GADAdSize constructed by GADAdSizeFromCGSize, 
// GADAdSizeFullWidthPortraitWithHeight, GADAdSizeFullWidthLandscapeWithHeight. 
// 

#import <UIKit/UIKit.h> 

// Do not create a GADAdSize manually. Use one of the kGADAdSize constants. 
// Treat GADAdSize as an opaque type. Do not access any fields directly. To 
// obtain a concrete CGSize, use the function CGSizeFromGADAdSize(). 
typedef struct GADAdSize { 
    CGSize size; 
    NSUInteger flags; 
} GADAdSize; 

#pragma mark Standard Sizes 

// iPhone and iPod Touch ad size. Typically 320x50. 
extern GADAdSize const kGADAdSizeBanner; 

// Medium Rectangle size for the iPad (especially in a UISplitView's left pane). 
// Typically 300x250. 
extern GADAdSize const kGADAdSizeMediumRectangle; 

// Full Banner size for the iPad (especially in a UIPopoverController or in 
// UIModalPresentationFormSheet). Typically 468x60. 
extern GADAdSize const kGADAdSizeFullBanner; 

// Leaderboard size for the iPad. Typically 728x90. 
extern GADAdSize const kGADAdSizeLeaderboard; 

// Skyscraper size for the iPad. Mediation only. AdMob/Google does not offer 
// this size. Typically 120x600. 
extern GADAdSize const kGADAdSizeSkyscraper; 

// An ad size that spans the full width of the application in portrait 
// orientation. The height is typically 50 pixels on an iPhone/iPod UI, and 90 
// pixels tall on an iPad UI. 
extern GADAdSize const kGADAdSizeSmartBannerPortrait; 

// An ad size that spans the full width of the application in landscape 
// orientation. The height is typically 32 pixels on an iPhone/iPod UI, and 90 
// pixels tall on an iPad UI. 
extern GADAdSize const kGADAdSizeSmartBannerLandscape; 

// Invalid ad size marker. 
extern GADAdSize const kGADAdSizeInvalid; 

#pragma mark Custom Sizes 

// Given a CGSize, return a custom GADAdSize. Use this only if you require a 
// non-standard size, otherwise, use one of the standard size constants above. 
GADAdSize GADAdSizeFromCGSize(CGSize size); 

// Get a custom GADAdSize that spans the full width of the application in 
// portrait orientation with the height provided. 
GADAdSize GADAdSizeFullWidthPortraitWithHeight(CGFloat height); 

// Get a custom GADAdSize that spans the full width of the application in 
// landscape orientation with the height provided. 
GADAdSize GADAdSizeFullWidthLandscapeWithHeight(CGFloat height); 

#pragma mark Convenience Functions 

// Checks whether the two GADAdSizes are equal. 
BOOL GADAdSizeEqualToSize(GADAdSize size1, GADAdSize size2); 

// Given a GADAdSize constant, returns a CGSize. If the GADAdSize is unknown, 
// returns CGSizeZero. 
CGSize CGSizeFromGADAdSize(GADAdSize size); 

// Determines if |size| is one of the predefined constants, or a custom 
// GADAdSize generated by FromCGSize. 
BOOL IsGADAdSizeValid(GADAdSize size); 

// Given a GADAdSize constant, returns a NSString describing the GADAdSize. 
NSString *NSStringFromGADAdSize(GADAdSize size); 


#pragma mark Deprecated Macros 

#define GAD_SIZE_320x50  CGSizeFromGADAdSize(kGADAdSizeBanner) 
#define GAD_SIZE_300x250 CGSizeFromGADAdSize(kGADAdSizeMediumRectangle) 
#define GAD_SIZE_468x60  CGSizeFromGADAdSize(kGADAdSizeFullBanner) 
#define GAD_SIZE_728x90  CGSizeFromGADAdSize(kGADAdSizeLeaderboard) 
#define GAD_SIZE_120x600 CGSizeFromGADAdSize(kGADAdSizeSkyscraper) 

这是什么在viewDidLoad中示例项目给出。

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    // Initialize the banner at the bottom of the screen. 
    CGPoint origin = CGPointMake(0.0, 
           self.view.frame.size.height - 
           CGSizeFromGADAdSize(kGADAdSizeBanner).height); 





    // Use predefined GADAdSize constants to define the GADBannerView. 
    self.adBanner = [[[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner 
                origin:origin] 
        autorelease]; 

    // Note: Edit SampleConstants.h to provide a definition for kSampleAdUnitID 
    // before compiling. 
    self.adBanner.adUnitID = kSampleAdUnitID; 
    self.adBanner.delegate = self; 
    [self.adBanner setRootViewController:self]; 
    [self.view addSubview:self.adBanner]; 
    [self.adBanner loadRequest:[self createRequest]]; 
} 

我不是在目标C是最好的,可以使用在此代码被称为发生了什么事的简短说明。对于Android有一个类似的问题,我想我会问iPhone的。 Google上的每个人都使用已弃用的宏。

回答

3

你看着示例代码在屏幕的底部,在屏幕底部的原点初始化广告(原产地是专门(0, HEIGHT_OF_SCREEN-HEIGHT_OF_AD)

的initWithSize:默认构造函数初始化到广告在屏幕的(0,0)顶部,这样,如果你只是初始化adBanner像这样:

self.adBanner = [[[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner] 
        autorelease]; 

你应该看到这则广告在屏幕的顶部进入