草庐IT

dcm4chee-arc

全部标签

objective-c - 这些符号 (-fno-objc-arc) 是什么意思?

我在我的项目中混淆了一些代码,既应用了ARC的编码风格,又有些不是。然后我遇到了一个设置一些符号或标志的解决方案:-fno-objc-arc我的问题是,这些标志是什么?这些符号是什么意思-fno-objc-arc?还有这些吗? 最佳答案 -fno-objc-arc标志用于编译器,不适用于链接器。它告诉编译器您的ObjectiveC代码将手动执行所有释放和保留。这是必要的,因为新添加的ARC模式prohibitsexplicituseofretain,release,autorelease,dealloc,andsoon;您甚至无法通

iOS ARC 完成了吗?

一位前开发人员为我们的组织构建了一个编写良好的iPhone应用程序。在他辞职后,另一位开发人员更新了应用程序的自动引用计数(ARC)。这个开发者已经不在了。我不相信他的所作所为,因为他是一个不择手段的开发商。我有15年的开发经验,但我是iPhone开发的新手。我需要知道我是否应该原封不动地保留他的更改。我仔细比较了他所做的更改。他只删除了dealloc函数并删除了“release”、“retain”和“autorelease”的使用。从我读到的http://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-Trans

ios - ARC 语义问题 "multiple methods named ' setRotation'“仅在归档时

我在cocos2dv3中的项目抛出ARC语义问题发现多个名为“setRotation:”的方法具有不匹配的结果、参数类型或属性存档时(Release模式)。它在部署到模拟器/设备(Debug模式)时运行良好。在Release模式下,编译器会混淆UIRotationGestureRecognizer和CCNode中的旋转实现。当我在CCBAnimationManager.m中遇到错误时,我将调用选择器setRotation的对象类型转换为(CCNode*)但随后错误在CCActionInterval。我希望有比在cocos2d库中到处进行类型转换更好的解决方案。我做错了什么?谢谢你的时间

objective-c - 如何使用 ARC 将所有权从 @autoreleasepool 中移出

我有以下代码-(NSString*)stringByEscapingXMLEntities;{NSString*result;@autoreleasepool{result=[selfstringByReplacingOccurrencesOfString:@"&"withString:@"&"];result=[resultstringByReplacingOccurrencesOfString:@"\""withString:@"""];//...lotof-stringByReplacingOccurrencesOfString:callsresult=[res

iphone - ARC 中的 generateCGImagesAsynchronouslyForTimes

如果我在启用了ARC的项目中运行以下命令,完成处理程序将永远不会触发。但如果没有ARC,它会按预期工作。我在这里缺少什么?NSURL*url=[NSURLURLWithString:@"http://media.w3.org/2010/05/sintel/trailer.mp4"];AVURLAsset*asset=[[AVURLAssetalloc]initWithURL:urloptions:nil];AVAssetImageGenerator*generator=[[AVAssetImageGeneratoralloc]initWithAsset:asset];generator

iphone - 使用 ARC(强/弱)避免循环保留,学习一些基础知识

我似乎还没有遇到问题,但我正在努力确保我使用了一些最佳实践。假设我有一个UITableViewController,它的数据源是MyObject对象的NSArray。所以在我的UITableViewController中我声明了我的数据源:@property(strong,nonatomic)NSArray*dataSource;然后,在我触摸一个单元格后,我想使用该单元格的MyObject推送一个显示某物详细View的新View。所以在新的UIViewController中我有这个:@property(strong,nonatomic)MyObject*myObject;当单元格被触

iphone - 在 ARC 上显示 UIKeyboard 时内存泄漏

调用UIKeyboard时,会分配内存,而当UIKeyboard隐藏时,不会释放内存。如果是框架在缓存它,有没有办法清除它?这些代码是我用来创建UITextField以及我如何隐藏UIKeyboard的代码:#import@interfaceSignInTextField:UITextField-(id)initWithIndexPath:(NSIndexPath*)indexPath;@end#import"SignInTextField.h"@implementationSignInTextField-(id)initWithIndexPath:(NSIndexPath*)inde

iphone - 为什么我在 ARC 下比较桥接 CGColorRefs 时遇到崩溃?

我有一个用于我在我的应用程序中使用的阴影TableView的类。在转换为ARC时,我不得不改变一些东西。对于新类,它在以下几行崩溃:(id)(inverse?darkColor:lightColor)到(__bridgeid)(inverse?lightColor:darkColor)。控制台显示***-[NotATyperetain]:messagesenttodeallocatedinstance0x4cee70之前:-(CAGradientLayer*)shadowAsInverse:(BOOL)inverse{CAGradientLayer*newShadow=[[[CAGra

ios - Xcode ARC 转换工具问题

我是第一次运行ARC转换工具。我已经按照说明处理了转换工具在实际运行之前发现的文件中的所有问题/错误。我还有几个第三方库,我告诉ARC通过在“要转换的目标”对话框中取消选中它们来跳过它们。运行该工具后,它向我显示了所有已更改文件的报告,但没有文件已更改。接下来,我保存并尝试构建项目,结果发现由于项目中所有对retain和release的调用,我有近1000个构建错误。据我了解,转换工具应该删除所有对保留、释放和自动释放的调用,但对我而言并非如此。有没有人遇到过这个问题,如果遇到过,你是怎么解决的?还是我有责任从我的应用程序中删除所有保留和发布?如果是这样,我不确定转换工具的意义是什么。

objective-c - 在转换为 ARC 时,如何确保 Controller 在完成处理之前一直保留?

我在我的应用中使用了以下模式并正在过渡到ARC。基本上,一个对象保留一个Controller的实例,并在通过委托(delegate)协议(protocol)通知它已完成时释放该Controller。我不使用iVar/propertyb/cstartProcess可以调用N次来处理N件事。示例如下://startaprocessinacontroller-(void)startProcess{MyController*controller=[[MyControlleralloc]init];//setthedelegate,thedelegateisdefinedas(nonatomic