2014-03-02 23 views
0

我有一個iAd,我試圖在屏幕底部定位,但是當我嘗試獲取廣告的高度時,我可以將其放在底部。只有當我以橫向進入屏幕時,纔會出現此錯誤,因爲廣告在縱向方向上較高,並且只在iPhone模擬器上與iPad上的廣告高度相同。iAd幀在iPhone上返回錯誤的高度

我用來將添加到底部的方法是將廣告框的y值設置爲視圖的高度減去廣告的高度。

這裏是我目前使用的代碼:

- (void)viewWillAppear:(BOOL)animated 
{ 
    CGRect adFrame = banner.frame; 
    adFrame.origin.y = screenHeight - banner.frame.size.height; 
    adFrame.size.width = screenWidth; 
    banner.frame = adFrame; 
    [banner setAutoresizingMask:UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleWidth]; 
} 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    banner.frame = CGRectZero; 
} 

任何幫助將非常感激。

+0

你怎麼計算screenHeight? – hacker2007

回答

1

我會看看Apple's sample code ,以便完全整合iAD,特別是在ContainerBanner/ContainerBanner/BannerViewController.m中。您正在尋找的是ADBannerView的- (CGSize)sizeThatFits:(CGSize)size

CGRect adRect = CGRectZero; 
CGRect contentFrame = self.view.bounds; 
adRect.size = [banner sizeThatFits:contentFrame.size]; 
adRect.origin.y = CGRectGetHeight(contentFrame) - CGRectGetHeight(adRect); 
banner.frame = adRect; 
+0

感謝這對我很好,但它應該是adRect.size – Ollie

相關問題