Iphone Xcode 4.2在IB的选项卡栏上放置导航控制器时出现警告

Iphone Xcode 4.2在IB的选项卡栏上放置导航控制器时出现警告,iphone,xcode4,ios4,ios5,xcode4.2,Iphone,Xcode4,Ios4,Ios5,Xcode4.2,我正在开发一个与iOS 4兼容的应用程序,因此我的部署目标设置为iOS 4.0 每当我将UINavigationController放到uitabar上时,我都会收到以下两个警告: 警告:属性不可用:定义Xcode 4.2之前的演示文稿上下文不可用。 警告:属性不可用:在5.0之前的iOS版本上定义演示上下文。 UINavigationController功能如预期,事实上,整个应用程序运行得非常完美。但这两个警告让我快发疯了 另外,当我删除UINavigationController时,警告就

我正在开发一个与iOS 4兼容的应用程序,因此我的部署目标设置为iOS 4.0

每当我将
UINavigationController
放到
uitabar
上时,我都会收到以下两个警告:

  • 警告:属性不可用:定义Xcode 4.2之前的演示文稿上下文不可用。
  • 警告:属性不可用:在5.0之前的iOS版本上定义演示上下文。
  • UINavigationController
    功能如预期,事实上,整个应用程序运行得非常完美。但这两个警告让我快发疯了


    另外,当我删除
    UINavigationController
    时,警告就会消失。

    您会收到这些警告,因为您正在使用iOS 5.0 SDK功能和4.x部署目标

    如果不是的话,大多数新的5.0热度,包括ARC和故事板,都与iOS 4.x完全向后兼容(我不记得4.0或4.3是受支持的最低版本,请查看文档),它将按预期工作,但Xcode无论如何都会警告您

    如果真的让你烦恼的话,你应该可以禁用这个警告,但我不会。也就是说,苹果目前不接受使用Xcode 4.2 beta版构建/归档的应用程序提交到应用商店。这意味着您需要在生产环境中使用Xcode 4.0/4.1


    在我们进一步讨论之前,您应该知道Xcode 4.2/iOS 5是测试版软件,它属于保密协议(您在加入苹果开发者计划时同意了这一点),不能在公共领域讨论。这意味着你将无法从公众视线范围内的地方获得尽可能好的帮助,比如StackOverflow。但是,既然我在这里,这是一个非常高层次的问题,我可以帮忙:)

    将来,如果你对iOS测试版有疑问或问题,你应该在irc.freenode.net上点击(一个很好的资源,在发布之前总是搜索),或者#iphonedev,查找非测试版内容(我会在那里,说声嗨!)


    如果您正在开发应用程序以在App Store上发布: 您需要使用Xcode 4.0或4.1进行开发,苹果将不接受使用4.2构建/归档的应用程序。(我知道我重复了自己的话,但人们似乎经常错过这一点)

    而且,尽管4.2b7比以前的Xcode Beta更好地支持为旧框架开发(通过允许您安装以前版本的模拟器),但您仍然会发现自己意外地到处使用5.0 SDK函数,因为代码完成/界面生成器非常积极地支持所有新的热点。这是因为测试版是为了尝试新事物,而不是为了稳定的应用程序开发

    这意味着您需要切换回使用Xcode 4.0/4.1进行生产,如果您没有安装它,或者您使用beta版过度编写了稳定版本,请不要尝试在4.2 beta版之上安装4.0/4.1,奇怪的事情会发生,两个版本都会开始表现得非常奇怪,Xcode崩溃的频率至少会增加一倍

    在这种情况下,最好按照以下步骤操作。确保不要跳过任何内容,否则必须重新启动整个过程

  • 确保您已提交并推送了代码, 像这样卸载Xcode会暂时删除git。(这是一个 我的工作问题(一次)

  • 如果您打算继续试验,请下载Xcode 4.0/.1和4.2的安装程序。(如果你已经 都下载了,整个过程不会超过5分钟 SSD上的分钟数)

  • 使用以下命令从命令行卸载Xcode beta:
    sudo/Library/uninstall devtools--mode=all
    ()

  • 重新启动计算机(这很重要,不要跳过!!!)

  • 安装最新的非测试版Xcode并继续开发


  • 如果要同时使用Xcode的两个版本(4.0/4.1和4.2): 您必须在安装4.0/4.1之后安装测试版,否则您将用旧的东西覆盖新的东西,这将给您带来很多令人费解的麻烦。我还建议在安装之间重新启动

    您需要在4.0/4.1之后安装4.2,并将其安装到另一个文件夹(我使用/Xcode4beta/,也不要将其放在包含4.0/4.1的文件夹中)。我发现,如果我把我的工作分成单独的iOS5分支,并在有空闲时间时尽可能地更新,我就能更好地了解新的热点


    如果您的手机上安装了iOS5测试版,而Xcode 4.0/4.1不允许您在手机上安装:

    这是因为Xcode需要先从手机中获取调试符号,然后才能用于开发,但只有Xcode beta才能为iOS5 beta设备执行此操作,因此请遵循以下步骤:

  • 确保您的手机已插入并打开,并且您的资源调配配置文件/证书已全部签出

  • 关闭Xcode 4.0/4.1中的项目

  • 在Xcode 4.2中打开项目备份,并选中organizer。您的手机旁边应该已经有一个绿点(假设您的所有配置都在工作),或者它应该正在收集调试符号。完成此任务,然后构建您的项目。它不需要成功构建,也不需要将应用程序安装到手机上,有时甚至不需要构建,Xcode可能是一个变化无常的情妇

  • 关闭Xcode 4.2中的项目

  • 在Xcode 4.0中打开项目备份,您现在应该能够像平常一样构建并安装到手机上

  • Xcode 4.0/4.1现在应该能够使用您的设备进行开发,直到您重新启动计算机

  • 只需取消选中属性检查器中的“定义上下文”复选框。(双击MainWindow.xib,选择导航