【问题标题】:'NSInvalidUnarchiveOperationException', reason: 'Could not instantiate class named UIKeyCommand''NSInvalidUnarchiveOperationException',原因:'无法实例化名为 UIKeyCommand 的类'
【发布时间】:2013-10-21 12:41:40
【问题描述】:

当我尝试显示另一个视图控制器时,我的应用程序崩溃了。当 iOS SDK 设置为 7.0 并且我的目标是 iOS 7.0 时,它确实可以正常工作。但我需要该应用程序以 iOS 6.0 为目标。 UIKit(显然)在导入中声明。据我所知,我试图展示的 UITableViewController 工作得非常好——我为另一个应用程序创建了它,使用 XCode 4.6.3,目标为 6.0,它编译时没有错误(就像这个一样),但它也显示没有崩溃.

我可以提供代码,这些代码只不过是使用模态转换呈现表格视图控制器,但我什至将 UIButton 连接到 UITableViewController - 它适用于 iOS 7,但不适用于 iOS 6。我相信当我使用 iOS 6.1 SDK 编译时,它应该使用 iOS 6.1 框架?

UIKeyCommand is only available in iOS 7 and later, according to this. 这让我有理由相信它使用的是 iOS 7.0 框架,即使已指定 iOS 6.1 SDK。

我已经用 xcode 标记了它,因为我认为它可能是由于 xcode 错误地搜索指定的 SDK 的框架造成的。

【问题讨论】:

  • 如果它在 iOS 7 上不可用,那么你不应该在那里使用它——这就是崩溃的原因。你必须准备一种不同的方式来处理 iOS 6。
  • 它仅在 iOS 7 上可用。我不是为 iOS 构建,也没有使用任何 iOS 7 特定的类或框架。

标签: objective-c xcode ios6 ios7


【解决方案1】:

我和你有同样的问题,这是我为解决它所做的:

我打开StoryboardSource Code,搜索标签:keyCommands,发现类似

的标签
<keyCommands> <keyCommand/> </keyCommands>

然后我删除了它。

之后我在iOS 6 &amp; 7 中运行了该应用程序,它运行没有问题。

让我知道这是否也适用于您的应用!

干杯!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-23
    • 2012-10-23
    • 1970-01-01
    • 2012-01-03
    • 2014-07-28
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多