2014-02-10 70 views
2

在iOS 7.1中,使用self.canDisplayBannerAds = YES來顯示iAds似乎在不應該將內容向上推動。self.canDisplayBannerAds與約束條件衝突

Here is a sample project running in the iOS 7.0.3 simulator

And here is the same project running in the iOS 7.1 simulator

如果刪除了錯誤不會出現這兩種觀點之間的垂直間隔限制。

這是一個簡單的在iOS或錯誤與我

這裏的一個問題是,如果有人想嘗試一下示例項目:

https://dl.dropboxusercontent.com/u/4521046/iPhoneUITest.zip

回答

1

我有同樣的問題,但在iOS 8.我有兩個帶圓角的按鈕,用它們的寬度除以2來創建一個圓。

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 
    self.instructionsButton.layer.cornerRadius = self.instructionsButton.frame.width/2 
} 

這些按鈕不會是一個完整的ci直到iAd展示之後。我說:

self.originalContentView.layoutSubviews() 

進入我的viewDidLayoutSubviews:

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 
    self.originalContentView.layoutSubviews() 
    self.instructionsButton.layer.cornerRadius = self.instructionsButton.frame.width/2 
} 

這種固定的按鈕來對負載的正確的約束。 canDisplayBannerAds的文檔聲明:「影響是視圖控制器的視圖屬性將不再返回原始視圖,它將返回新的容器。要訪問原始視圖,請使用originalContentView屬性。」你必須記得使用originalContentView作爲self.view。