iphone – 奇怪的UIAlertView私有方法崩溃_performPopup

iphone – 奇怪的UIAlertView私有方法崩溃_performPopup,第1张

概述我试图找出UIAlertView中私有方法导致的崩溃.我的应用程序崩溃大约有一半涉及此问题. -[UIAlertView(Private) _performPopup:animationType:revealedBySpringBoardAlert:] 这是我的崩溃报告中的部分.困扰我的是,我的大多数警报视图都是由设计为在整个应用程序生命周期中存在的单例对象d出的.所以我不确定这是否是由UIAle 我试图找出UIAlertVIEw中私有方法导致的崩溃.我的应用程序崩溃大约有一半涉及此问题.

-[UIAlertVIEw(Private) _performPopup:animationType:revealedBySpringBoarDalert:]

这是我的崩溃报告中的部分.困扰我的是,我的大多数警报视图都是由设计为在整个应用程序生命周期中存在的单例对象d出的.所以我不确定这是否是由UIAlertVIEw的委托在被它调用之前发布的.谁看过这个吗?你能给些建议么?谢谢.

HarDWare Model:      iPhone4,1Version:         ??? (???)Code Type:       ARM (Native)Parent Process:  launchd [1]Date/Time:       2012-11-15 11:31:57.452 -0800OS Version:      iOS 6.0.1 (10A523)Report Version:  104Exception Type:  EXC_BAD_ACCESS (SIGSEGV)Exception Codes: KERN_INVALID_ADDRESS at 0x5354440aCrashed Thread:  0Thread 0 name:  dispatch queue: com.apple.main-threadThread 0 Crashed:0   libobjc.A.dylib                 0x33ab95b6 objc_msgSend + 221   UIKit                           0x32e52fa0 -[UIAlertVIEw(Private) _performPopup:animationType:revealedBySpringBoarDalert:]2   UIKit                           0x330621c4 -[UIAlertVIEw(Private) _repopupNoAnimation]3   UIKit                           0x33065b38 __36-[_UIAlertStackWatcher _appResumed:]_block_invoke_04   libdispatch.dylib               0x37ec211c _dispatch_call_block_and_release5   libdispatch.dylib               0x37ec14b4 _dispatch_clIEnt_callout6   libdispatch.dylib               0x37ec61b8 _dispatch_main_queue_callback_4CF$VARIANT$mp7   CoreFoundation                  0x39ba2f36 __CFRunLoopRun8   CoreFoundation                  0x39b15eb8 CFRunLoopRunspecific9   CoreFoundation                  0x39b15d44 CFRunLoopRunInMode10  GraphiCSServices                0x37ee32e6 GSEventRunModal11  UIKit                           0x32d552f4 UIApplicationMain12  MYAPP                           0x0000334a main + 7013  MYAPP                           0x000032fc start + 36
解决方法 这听起来像代表在这里引起了问题.对于不需要跟踪用户输入的简单UIAlertVIEw,您只需将委托设置为nil,例如:

UIAlertVIEw *alert = [[UIAlertVIEw alloc] initWithTitle:@"My Alert" message: @"My Message" delegate: nil cancelbuttonTitle:@"OK" otherbuttonTitles:nil];[alert show];

如果确实需要委托方法,请确保在丢失视图时忽略UIAlertVIEw的委托:

alert.delegate = nil;

无论是dealloc还是vIEwWilldisappear:取决于代码的设置方式!

总结

以上是内存溢出为你收集整理的iphone – 奇怪的UIAlertView私有方法崩溃_performPopup全部内容,希望文章能够帮你解决iphone – 奇怪的UIAlertView私有方法崩溃_performPopup所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1060402.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存