Iphone 不兼容的目标C类型

Iphone 不兼容的目标C类型,iphone,crash,nsstring,directory,nsurl,Iphone,Crash,Nsstring,Directory,Nsurl,我试图将应用程序文档目录的位置存储在NSString中 NSString *documentDirectory = [self applicationDocumentsDirectory]; 代码编译时没有错误,但我得到警告,我正在尝试使用NSURL初始化NSString。当我运行应用程序时,应用程序崩溃。我试着铸造,但它给了我一个错误。我得到的那本书(Head First iPhone开发)说代码应该可以工作。代码在我的appDelegate.m文件中。任何帮助都将不胜感激 关于您的-app

我试图将应用程序文档目录的位置存储在NSString中

NSString *documentDirectory = [self applicationDocumentsDirectory];
代码编译时没有错误,但我得到警告,我正在尝试使用NSURL初始化NSString。当我运行应用程序时,应用程序崩溃。我试着铸造,但它给了我一个错误。我得到的那本书(Head First iPhone开发)说代码应该可以工作。代码在我的appDelegate.m文件中。任何帮助都将不胜感激


关于

您的
-applicationDocumentsDirectory
方法正在返回一个
NSURL
。您希望它返回一个
NSString

方法返回一个
NSURL
。您必须在
NSString
中转换url。
这很容易。使用
NSURL
类中的方法。

正如Dave DeLong所说,它返回一个NSURL。但是,在不更改方法的情况下,绕过此问题并将其转换为NSString的最简单方法是将字符串设置为NSURL的absoluteString

NSString *documentDirectory = [[self applicationDocumentsDirectory] absoluteString];

您的
应用程序文档目录
方法是什么样的?不仅显示标题,还显示实现。