CGAffineTransformInvert: singular matrix Error
我在 Xcode 中创建了 Universal App(单一视图)。因为我想在每个视图上都有
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { if var root = self.window?.rootViewController { let contentFrame = UIScreen.mainScreen().bounds var _banner = ADBannerView(adType: ADAdType.Banner) _banner.frame=CGRectMake(0, contentFrame.height - _banner.frame.height, _banner.frame.width, _banner.frame.height) _banner.delegate = self root.view.addSubview(_banner) } return true } |
在真正的 iPhone (iOS 8) 上一切正常(横幅出现在每个视图上)但我收到此错误:
1 | <Error>: CGAffineTransformInvert: singular matrix. |
如果我尝试在模拟器 (iOS 8) 上运行此应用程序,行为是相同的。一切正常,我得到同样的错误,但我得到:*ADBannerView:
1 2 3 4 | Unhandled error (no delegate or delegate does not implement didFailToReceiveAdWithError:): Error Domain=ADErrorDomain Code=7"The operation couldn’t be completed. Ad was unloaded from this banner" UserInfo=0x7b83bf30 {ADInternalErrorCode=7, ADInternalErrorDomain=ADErrorDomain, NSLocalizedFailureReason=Ad was unloaded from this banner}* |
但是我有委托并且我实现了
我的问题是如何解决这两个特定错误?
最可能的原因是这里的矩形之一是零。你不能反转零矩阵(这是一个技术细节,你真的不应该关心;我只是想说为什么这是你得到的错误)。
将此添加到您的 viewController 类中。将 adBanner 替换为您的横幅属性名称
1 2 3 4 5 | -(void)viewDidDisappear:(BOOL)animated{ [adBanner removeFromSuperview]; adBanner.delegate = nil; adBanner = nil; } |