今天,我已经将我的xCode更新为4.2版本,而且我想禁用ARC,我也用谷歌搜索.但无法解决我的问题.根据搜索结果,在目标设置中,我找不到'Objective-C自动引用计数'项,因此没有机会将其设置为NO.我逐个找到该项目,并使用搜索字段.
一个人知道最新的Xcode4.2,如何禁用项目的ARC,而不是特定的文件.
非常感谢.
使用Xcode 4.2,如何启用/禁用"自动引用计数"?
解答在构建设置下,根据您是否要启用ARC,将"是"和"否"翻转.

在iOS5中使用Apple的Reachability代码,我得到了一堆编译错误,如下所示.关于这里发生了什么的任何想法?我正在使用ARC,所以我稍微编辑了标准代码以删除autorelease/retain和NSAutoReleasePool.
架构armv7的未定义符号:
"_SCNetworkReachabilityCreateWithAddress",引自:Reachability.o中的:+ [Reachability reachabilityWithAddress:]
"_SCNetworkReachabilityCreateWithName",引自:Reachability.o中的+ [Reachability reachabilityWithHostName:]
"_SCNetworkReachabilityUnscheduleFromRunLoop",引自: - Reachability.o中的[Reachability stopNotifier]
"_SCNetworkReachabilityScheduleWithRunLoop",引自: - Reachability.o中的[Reachability startNotifier]
"_SCNetworkReachabilitySetCallback",引自: - Reachability.o中的[Reachability startNotifier]
"_SCNetworkReachabilityGetFlags",引自: - Reachability.o中的[ - Reachability connectionRequired] - Reachability.o中的[Reachability currentReachabilityStatus]
ld:找不到架构armv7 clang的符号:错误:链接器命令失败,退出代码为1(使用-v查看调用)
有没有人在iOS5下为ARC提供可行的可达性代码?
我曾经将所有委托属性声明为
@property (assign) id<FooDelegate> delegate;
Run Code Online (Sandbox Code Playgroud)
我的印象是所有赋值属性现在都应该是弱指针,这是正确的吗?如果我试图声明为:
@property (weak) id<FooDelegate> delegate;
Run Code Online (Sandbox Code Playgroud)
我在尝试@synthesize时遇到错误(不支持自动生成的弱属性).
在这种情况下,最佳做法是什么?
我一直使用Flash,并且很容易在一帧和另一帧之间更改alpha值.有没有办法在xcode 4中执行此操作?我正在制作一个徽标,我需要第一个png消失而第二个png开始出现.TNX!
我已将我的项目转换为iOS 5并启用了ARC.现在我需要将核心情节与项目整合起来.当我尝试实例化Core Plot中包含的样本控制器时,我得到大约20个错误,如下所示:
当前部署目标不支持自动__weak引用
我fno-objc-arc在构建设置中明确地说过了控制器名称旁边的内容.
在启用ARC的情况下运行核心图还需要什么?
谢谢!
我对ARC如何工作有点困惑,我知道有自动引用计数但是这个功能甚至可以用于分配原始实例变量(不使用属性).
例如,如果我有一个实例变量arr:
@interface TestClass : NSObject {
NSArray *arr;
}
Run Code Online (Sandbox Code Playgroud)
现在如果在方法内部我使用自动释放分配它NSArray:
- (IBAction)test {
arr = [NSArray arrayWithObject:@"TEST"];
}
Run Code Online (Sandbox Code Playgroud)
这个阵列会发生什么?是否只是神奇地保留它,直到arr被重新分配给其他东西?
现在,如果我做了类似的事情:
self.arr = [NSArray arrayWithObject:@"TEST"];
Run Code Online (Sandbox Code Playgroud)
如果它强而弱,会发生什么?
关于如何#import在objective-c中组织你的陈述已经有过一些讨论.这个线程告诉我们如何手动完成它,在这里,我们了解到没有办法让Xcode完成工作(比如Eclipse for Java或Visual Studio for C#).现在,我看到,因为objective-c是不受管理的,所以这个任务不像Java或C#那么容易,但是
是否有任何工具(Xcode插件或独立)可以帮助您清理导入语句?或者更具体地说,是否有工具可以帮助您完成以下一项或多项任务:
#import或@class语句#import或@class语句#import语句转换为@class语句,反之亦然,具体取决于使用的内容#import或@class语句的顺序,例如按字母顺序或在代码中首次使用PS:只是因为有人认为这个问题不属于这里,我猜它完全属于software tools commonly used by programmers或者practical, answerable problems that are unique to the programming profession
我有一个包含49个源文件的项目,我正在尝试使用edit> refactor> convert to arc转换为ARC .我点击"预检",没有错误,目标编译.
Xcode通过"生成预览",编译所有49个源文件,然后在审阅更改列表中显示1(或2)文件.这是一个.h/.m文件.那个看似正确.我看到该列表上没有其他文件.
当我单击"保存"时,窗口关闭,项目尝试构建,但失败并显示错误:
Error in format of file: ...-arc.migrate/remap
Run Code Online (Sandbox Code Playgroud)
这些错误出现在所有文件中
如果我尝试构建项目,我会得到〜350个错误,说"保留,不允许在ARC中释放"......请帮忙!
如何将整个项目立即转换为ARC?
更新:多次清理项目并将部署目标更改为iPhone 5模拟器后,我能够在"保存更改"列表中查看所有文件.
我正在尝试播放MP3,通过AVAudioPlayer它我认为相当简单.不幸的是,它并没有完全奏效.这就是我所做的一切:
我加入了AVFoundation框架到项目中,以及在#import
<AVFoundation/AVFoundation.h>对ViewController.m
我在应用'文档'文件夹中添加了一个MP3文件.
我改为ViewControllers viewDidLoad:以下内容:
码:
- (void)viewDidLoad
{
[super viewDidLoad];
NSString* recorderFilePath = [NSString stringWithFormat:@"%@/MySound.mp3", [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:recorderFilePath] error:nil];
audioPlayer.numberOfLoops = 1;
[audioPlayer play];
//[NSThread sleepForTimeInterval:20];
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,音频在开始播放后显然会立即停止.如果我取消注释sleepForTimeInterval它会播放20秒并在之后停止.只有在使用ARC进行编译时才会出现此问题,否则,它会完美无缺地运行.
objective-c avfoundation avaudioplayer ios automatic-ref-counting
ios5 ×5
objective-c ×4
ios ×3
xcode ×2
xcode4.2 ×2
alpha ×1
animation ×1
avfoundation ×1
cocoa-touch ×1
core-plot ×1
delegates ×1
import ×1
iphone ×1
iphone-4 ×1
migrate ×1
plugins ×1
png ×1
reachability ×1
wifi ×1