Objective c Can';找不到应用程序支持目录?
AppDelegate上始终有一个预先编写的函数:Objective c Can';找不到应用程序支持目录?,objective-c,cocoa,Objective C,Cocoa,AppDelegate上始终有一个预先编写的函数: (NSString *)applicationSupportDirectory { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES); NSString *basePath = ([paths count] > 0) ? [paths objectAtInde
(NSString *)applicationSupportDirectory {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : NSTemporaryDirectory();
return [basePath stringByAppendingPathComponent:@"SyncFile"];
}
但是,我不能在此类之外调用此方法:
id _appDelegate = (SyncFile_AppDelegate *)[[NSApplication sharedApplication] delegate];
NSLog(@"%@", [_appDelegate applicationSupportDirectory]);
编译器警告我它找不到方法applicationSupportDirectory。。。
有人知道我的代码出了什么问题吗?
多谢各位 不要忘记导入“SyncFile\u AppDelegate.h”不要忘记导入“SyncFile\u AppDelegate.h”如果不导入头,编译器在编译调用方法的代码时将不会听说此方法,因此会发出警告。标题会告诉编译器关于它的信息,但只有在您导入它时,因为编译器才读取您导入的标题的内容(或由您导入的其他标题导入的内容,或由其他标题导入的其他标题导入的内容…等等)。谢谢,但我确实包含了它。我仍然找不到问题所在,所以我声明了一个新的NSString对象来记录它并与不同的类共享…如果没有导入头,编译器在编译调用该方法的代码时将不会听到此方法,因此会发出警告。标题会告诉编译器关于它的信息,但只有在您导入它时,因为编译器才读取您导入的标题的内容(或由您导入的其他标题导入的内容,或由其他标题导入的其他标题导入的内容…等等)。谢谢,但我确实包含了它。我仍然找不到问题所在,所以我声明了一个新的NSString对象来记录它并与不同的类共享。。。