【问题标题】:Incompatible Objective C types不兼容的 Objective C 类型
【发布时间】:2011-03-24 23:19:42
【问题描述】:

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

NSString *documentDirectory = [self applicationDocumentsDirectory];

代码编译没有错误,但我收到警告说我正在尝试使用 NSURL 初始化 NSString。当我运行应用程序时,应用程序崩溃。我尝试铸造,但它给了我一个错误。我拿到的书(Head First iPhone Development)说代码应该可以工作。代码在我的 appDelegate.m 文件中。任何帮助将不胜感激。

问候

【问题讨论】:

  • 您的applicationDocumentsDirectory 方法是什么样的?不仅显示标题,还显示实现。

标签: iphone crash nsstring directory nsurl


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 2011-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-07
        • 1970-01-01
        • 2011-04-20
        相关资源
        最近更新 更多