草庐IT

objective-c - 在dealloc中应该将什么样的属性设置为nil?

我正在使用ARC。ARC会自动释放dealloc中的所有属性吗?是否需要手动将所有公共(public)属性和私有(private)字段设置为nil?有什么好的模式可以遵循吗? 最佳答案 在ARC下,模式是……不要在dealloc中做任何事情,甚至不要实现它。ARC会为您处理属性和实例变量。唯一的异常(exception)是dealloc是取消注册通知的好地方,如果您的对象已经注册了任何通知。 关于objective-c-在dealloc中应该将什么样的属性设置为nil?,我们在Stack

iphone - 在 Objective-C 中,如何处理 [[myView alloc] init] 返回 nil?

似乎在一本书的代码示例中,总是定义init,以便仔细检查self是否能够存在。-(id)init{self=[superinit];if(self){//initialize}returnself;}然而,在返回时,没有任何代码检查对象是否能够存在。但是否应该检查,又该如何处理呢?如果对象不存在,是否意味着系统内存严重不足,甚至弹出错误消息也不可能? 最佳答案 However,uponreturn,noneofthecodeatallcheckswhethertheobjectisabletoexist.Butshoulditbec

iphone - 使用 CoreData 创建静态库时出现问题 - 无法使用 nil 模型创建 NSPersistentStoreCoordinator

如何引用我在静态库项目中创建的模型?这会返回null并抛出错误,因为资源位于这个静态库中://thiscodeisinthestaticlibrary-(NSManagedObjectModel*)managedObjectModel{if(__managedObjectModel!=nil){return__managedObjectModel;}NSURL*modelURL=[[NSBundlemainBundle]URLForResource:@"eCommerceEngine"withExtension:@"mom"];__managedObjectModel=[[NSMana

iphone - 添加目标 :self versus addTarget:nil

我是iOS开发新手。当我以编程方式添加按钮时,我有点困惑。当我们将目标分配给按钮时,如下所示:[buttonaddTarget:selfaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];和[buttonaddTarget:nilaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];这两种情况都是调用CallMe方法。谁能给我解释一下这两行代码之间的实际区别是什么。如果有人能专门解释一下addTarget的工作原理

objective-c - NSUTF8StringEncoding 返回 nil NSString

我正在使用最新的SDK和XCode4.2开发iOs4应用程序。我正在使用网络服务检索一些数据,并且我收到了该数据。但是,当我这样做的时候NSString*json_string=[[NSStringalloc]initWithData:receivedDataencoding:NSUTF8StringEncoding];receivedData有944bytes但json_string为nil。从网络服务中我得到这个字符串(从浏览器窗口复制和粘贴):{"posts":[{"ID":"324","fecha":"10/02/2012","titulo":"Preparadaparalal

ios - 在 ARC 下,卸载 viewcontroller 时需要为所有强成员设置 nil 吗?那是必须的吗?

假设我有一个这样的ViewController:@interfaceControllerA:viewcontroller{NSString*__stronga;}@end在我设置的viewDidLoad函数中a=[[NSSStringalloc]init];在另一个ControllerB中,{ControllerA*controllerA=[[ControllerAalloc]init];}controllerA的成员会被释放吗? 最佳答案 是的,a指向的字符串会在controllerA释放时释放。您不需要自己将其设置为nil。Tr

ios - 硬件相关 NSDateFormatter dateFromString : bug (returns nil)

我有几个日期字符串需要转换为NSDates。我的解析代码如下:NSString*s=[pairobjectForKey:@"nodeContent"];NSDateFormatter*f=[[NSDateFormatteralloc]init];[fsetDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZ"];self.date=[fdateFromString:s];以上代码在我们测试过的所有设备和模拟器中都运行良好。奇怪的是,当上面的代码在任何运行iOS6.1或7.0.x的iPhone5上运行时,行self.date=[fdateFromString:s];每

iphone - 检测点击字符。 UITextView characterRangeAtPoint 总是返回 nil

我正在尝试确定UITextView中的哪个特定字符已被点击。我尝试使用characterRangeAtPoint:方法。但它总是返回nil,无论我在UITextView中点击什么地方。我什至编写并运行了以下代码:for(intx=0;x嗯,它永远不会到达NSLog字符串。我做错了什么? 最佳答案 这是一个iOS7错误。characterRangeAtPoint:总是返回nil,除非事先至少选择了一次某些文本。作为解决方法,您可以预先调用setSelectedRange:或setSelectedTextRange:,但随后textVi

ios - AVAudioPlayer initWithContentsOfURL 为 AAC/M4A 文件返回 nil

我使用以下代码播放音频文件。它可以很好地播放MP3文件,但是当我尝试播放AAC文件时,[[AVAudioPlayeralloc]initWithContentsOfURL:]返回nil并且我收到以下错误:ErrorDomain=NSOSStatusErrorDomainCode=1937337955"Theoperationcouldn’tbecompleted.(OSStatuserror1937337955.)"音频文件在Mac和iPhone上播放良好(当我通过电子邮件发送给自己时)并且在此处:https://dl.dropboxusercontent.com/u/2667666/

ios - 从层次结构中删除 View 时,是否调用了 willMoveToSuperview(使用 nil)?

如果你实现willMoveToSuperview在UIView上子类,是否保证在nil时被调用(使用removeFromSuperview)在您的View中被调用?文档说newSuperview参数可能是nil并且它被称为“每当superView发生变化”但我不确定我是否可以将其解释为意味着当View从其superView中删除时即使没有移动到不同的View也会被调用监督。 最佳答案 每当View接收到removeFromSuperview,并且View的父View不是nil时,View将始终执行[selfwillMoveToSup