iAd导致约束冲突
问题描述:
我想弄清楚我的约束是怎么回事...... Storyboard
认为存在一些冲突constraints
但我不能从手动设置中看到。iAd导致约束冲突
显然,这些都是冲突的约束:
(
"<_UILayoutSupportConstraint:0x7fc9a0431200 V:[_UILayoutGuide:0x7fc9a0587fc0(0)]>",
"<_UILayoutSupportConstraint:0x7fc9a040e210 V:|-(0)-[_UILayoutGuide:0x7fc9a0587fc0] (Names: '|':UIView:0x7fc9a0584b10)>",
"<_UILayoutSupportConstraint:0x7fc9a0404300 V:[_UILayoutGuide:0x7fc9a0588ad0(0)]>",
"<_UILayoutSupportConstraint:0x7fc9a0400e00 _UILayoutGuide:0x7fc9a0588ad0.bottom == UIView:0x7fc9a0584b10.bottom>",
"<NSLayoutConstraint:0x7fc9a0584860 V:[UIImageView:0x7fc9a0584f90(0)]>",
"<NSLayoutConstraint:0x7fc9a058afb0 V:[_UILayoutGuide:0x7fc9a0587fc0]-(0)-[UIImageView:0x7fc9a0584f90]>",
"<NSLayoutConstraint:0x7fc9a058b280 V:[UIImageView:0x7fc9a0584f90]-(0)-[_UILayoutGuide:0x7fc9a0588ad0]>",
"<NSLayoutConstraint:0x7fc9a0775890 'UIView-Encapsulated-Layout-Height' V:[UIView:0x7fc9a0584b10(320)]>"
)
谁能帮我找出它认为这是怎么回事?我正在使用大小类,但从我可以看到所有正确的约束安装/卸载..
好吧,看起来iAd
导致我的constraints
搞乱风景...希望禁用横幅广告横幅将解决这..
答
你可以尝试在代码中创建你的iAd banner
我总是喜欢这种方式。
下面是一些适合我的工作代码。广告会根据屏幕尺寸自动更改尺寸,并位于屏幕的底部。
import iAd
class viewController: UIViewController, ADBannerViewDelegate {
var AdBanner = ADBannerView()
override func viewDidLoad() {
super.viewDidLoad()
/* Ad Banner Settings */
AdBanner = ADBannerView()
AdBanner.frame = CGRectZero
AdBanner.delegate = self
self.AdBanner.frame = CGRectMake(0, self.view.frame.size.height-self.AdBanner.frame.size.height, self.AdBanner.frame.size.width, self.AdBanner.frame.size.height)
AdBanner.backgroundColor = UIColor.clearColor()
self.view .addSubview(AdBanner)
}
/* All iAd Functions */
func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
/* whatever you need */
return true
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
/* whatever you need */
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
AdBanner.hidden = false
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
NSLog("Error Loading Ad")
/* whatever you need */
AdBanner.hidden = true
}
func bannerViewWillLoadAd(banner: ADBannerView!) {
/* whatever you need */
}