草庐IT

objc_overrelease_during_dealloc_e

全部标签

iOS 7 应用程序崩溃 EXC_CRASH (SIGABRT) objc_exception_throw 在 iOS 6 上工作正常

我们的应用程序在iOS7中崩溃,但在iOS6中运行良好。我们不确定是什么导致了这个问题。我们可以看到抛出了一些异常,但我们不确定代码中的何处导致了异常。这是崩溃报告:IncidentIdentifier:1F589930-15BD-49F7-80E6-831A95092FDFCrashReporterKey:aaa79870161ff1e371394b881a26e97f0066f464HardwareModel:iPhone5,2Process:myapp[1492]Path:/var/mobile/Applications/A121DF2F-A7B9-4DD9-9FBC-BB06C

ios - NotificationCenter 观察者使用 ARC 阻止 dealloc

我正在尝试调试我最近转换为使用ARC的项目。我很难确定为什么对象没有被释放并保留在内存中(有没有一种简单的方法可以查看是什么引用将对象保留在内存中?)通知中心链接似乎有一个问题。在viewDidLoad上,我注册了三个通知:[notificationCenteraddObserverForName:kAudioPlaybackStartobject:nilqueue:[NSOperationQueuemainQueue]usingBlock:^(NSNotification*note){[selfhandle_PlaybackStateStart:nil];}];[notificati

ios - 如何在 ObjC 中普遍更改 UIAlertController 按钮颜色

这个问题类似于this但是,我不想更改每个UIAlertController中的颜色,而是想像“AppDelegate”一样更改它的通用颜色。所以,如果我在一个地方更改颜色,那么所有警报Controller操作按钮都应更改为新颜色。我的问题是:是否可以通过AppDelegate完成?如果没有,我该怎么做?Apple会批准在所有iOS版本中将按钮颜色更改为自定义颜色吗? 最佳答案 是的,这是可能的。在AppDelegate中添加以下行,所有UIAlertControllers都将设置色调颜色![[UIViewappearanceWhe

objective-c - 弹出错误 - [UIPopoverController dealloc] 在弹出窗口仍然可见时到达

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:UIPopovercontrollerdeallocreachedwhilepopoverisstillvisible我正在创建一个通用应用程序并尝试从相机胶卷中选择一张图片。在iPhone上工作正常,iPad需要一个弹出窗口,所以已经这样做了,现在不断出现错误-[UIPopoverControllerdealloc]在popover仍然可见时到达。我研究过:StackLinkStackLink和谷歌,没有什么能解决这个问题卡住了,感谢任何建议我在.h中实现了popover委托(delegate).m-(vo

ios - 使用 ObjC RestKit 库如何将对象映射到 JSON NSString *

我正在使用RestKithttp://restkit.org适用于iOS。我定义了一个对象和一个对象映射,可以使用它与服务器发送和接收数据。但是,对于我的映射对象,我希望-description方法返回JSON映射以记录到控制台。如何将对象映射为字符串? 最佳答案 从Reskit的新版本中的RestKitObjectMapping2.0开始,对象映射现在已经发生了重大变化,@b​​radgonesurfing的回答在这些新版本中将不起作用。您现在需要使用RKObjectParameterization执行对象序列化,如下所示:RKO

ios - self 弱的 NSTimer;为什么不调用 dealloc?

考虑具有强(或弱,相同)NSTimer属性的ViewController:__weak__typeof(self)ws=self;self.timer=[NSTimerscheduledTimerWithTimeInterval:2target:wsselector:@selector(timerTigger:)userInfo:nilrepeats:YES];但为什么这个ViewController不调用dealloc方法,无论我通过strong还是weak引用到self?详细代码如下:#import"SecondViewController.h"@interfaceSecondVi

ios - 类类别中的 Dealloc 方法

我一直在查看一些第三方代码,这些代码将类类别添加到UITableView;该接口(interface)添加了三个方法,但实现还包括-dealloc方法(以及其他辅助方法)的代码。我对类类别不是很熟悉——除了这看起来是一件坏事之外,这是否会覆盖所有UITableView实例的-dealloc方法——即使该类别不是由特定类导入的(比如一个ViewController)来实例化一个UITableView? 最佳答案 丢弃该代码,因为它显然是垃圾(如果可以,请发布指向它的链接)。假设它确实是UITableView上的一个类别,dealloc

ios - ARC dealloc 的 Hook 结束

给出以下简单实现:@implementationRTUDeallocLogger-(void)dealloc{NSLog(@"deallocated");}@end我们在ARC下运行以下代码:@implementationRTURunner{NSArray*arr;}-(void)run{arr=[NSArrayarrayWithObjects:[[RTUDeallocLoggeralloc]init],[[RTUDeallocLoggeralloc]init],[[RTUDeallocLoggeralloc]init],nil];NSLog(@"nullingarr");arr=NU

ios - 用户界面文本字段 : restrict the maximum allowed value (number) during inputting

我有一个UITextField,我想限制字段中允许的最大输入值是1000。那是当用户在里面输入数字时,一旦输入值大于999,除非用户输入小于1000的值,否则输入字段中的值将不再更新。我想我应该使用UITextField委托(delegate)来限制输入:-(BOOL)textField:(UITextField*)textFieldshouldChangeCharactersInRange:(NSRange)rangereplacementString:(NSString*)string{//Howtodo}但我不确定如何实现它。有什么建议吗?==========更新========

ios - ObjC++ 不通过引用捕获异常吗?

我在ObjC++包装器类(.mm)中使用以下代码,我注意到如果我通过引用捕获代码,则代码随机失败并返回EXC_BAD_ACCESS。另一方面,如果我捕获到对象(“std::runtime_error错误”),它似乎没问题。我是ObjC的新手,我知道ObjC中不使用引用,但我希望编译器在这种情况下能够正常工作。我错过了什么吗?catch(std::runtime_error&error){dispatch_async(dispatch_get_main_queue(),^{UIAlertView*alert=[[UIAlertViewalloc]initWithTitle:@"Error