
[英]iphone xcode - different levels of drill down in tab bar controller - nav controller - table view
[英]Xcode 4.2 Warnings when dropping Nav Controller on Tab Bar in IB
我正在开发与iOS 4兼容的应用程序,因此我的部署目标设置为iOS 4.0。
每当我将UINavigationController
放到UITabBar
,都会收到以下两个警告:
warning: Attribute Unavailable: Defines Presentation Context is not available prior to Xcode 4.2.
warning: Attribute Unavailable: Defines Presentation Context on iOS versions prior to 5.0.
UINavigationController
功能符合预期,实际上,整个应用程序运行完美。 但是,这两个警告使我发疯!
另外,在删除UINavigationController
的那一刻,警告消失了。
只需取消属性检查器中的“定义上下文”复选框即可。 (双击MainWindow.xib,选择导航控制器,然后转到“视图”->“实用工具”->“属性”检查器。)这将消除警告。
之所以收到这些警告,是因为您将iOS 5.0 SDK功能与4.x部署目标一起使用。
所有这些(如果不是全部的话),包括ARC和Storyboards在内的大多数新5.0热点完全与iOS 4.x向后兼容(我不记得4.0或4.3是否是最低受支持的版本,请查看文档),它将起作用按预期,但是Xcode仍然会警告您。
如果该警告确实困扰您,则应该可以将其禁用,但我不会。 也就是说, Apple当前不接受使用Xcode 4.2 beta构建/存档的应用程序提交给App Store。 这意味着您需要在生产环境中使用Xcode 4.0 / 4.1。
在继续之前,您应该知道Xcode 4.2 / iOS 5是beta版软件,它在NDA之下(加入Apple开发人员计划时您已同意这样做),并且不能在公共领域进行讨论。 这意味着您将无法从像StackOverflow这样的公众视野中获得尽可能多的帮助。 但是 ,由于我在这里,这是一个非常高层次的问题,所以我可以提供帮助:)
将来,如果您有iOS Beta版问题或问题,则应该访问Apple Developer Beta论坛 (一个很好的资源,在发布前请务必先搜索),或者在irc.freenode.net上#iphonedev上查找非Beta版的内容(我会在那里,打个招呼!)
您需要使用Xcode 4.0或4.1进行开发,Apple不接受使用4.2内置/归档的应用程序。 (我知道我重复了自己,但人们似乎经常会错过这一点)
而且,尽管4.2b7支持比以前的Xcode Beta更好的开发较旧的框架(通过允许您安装模拟器的先前版本),但是您仍然会发现自己偶然地在各处使用了5.0 SDK函数,因为代码完成/接口建筑商非常积极地支持所有新的热点。 这是因为Beta是为了尝试新事物,而不是稳定的应用程序开发。
这意味着您需要切换回使用Xcode 4.0 / 4.1进行生产,如果您尚未安装Xcode 4.0 / 4.1,或者您使用Beta版覆盖了稳定版, 请不要尝试在4.2 Beta版之上安装4.0 / 4.1 ,将会发生奇怪的事情,并且这两个版本都会开始表现得很奇怪,并且Xcode崩溃的频率至少是两倍。
在这种情况下,最好的操作是遵循以下步骤。 确保您不跳过任何内容,否则必须重新启动整个过程。
确保已提交并推送了您的代码,以这种方式卸载Xcode会临时删除git。 (这对我上班一次是个问题)
如果您打算继续尝试,请下载Xcode 4.0 / .1和4.2的安装程序。 (如果您都已经下载了,则整个过程在SSD上花费的时间不会超过5分钟)
使用以下命令从命令行卸载Xcode beta:
sudo <Xcode>/Library/uninstall-devtools --mode=all
( 更多信息在这里 )
重新启动计算机(这很重要,请不要跳过它!!!)
安装最新的非beta版本的Xcode,然后继续开发。
您必须在安装了AFTER 4.0 / 4.1之后安装Beta版 ,否则您将用旧的东西覆盖新的东西,这将使您感到很多麻烦。 我还建议在安装之间重新启动。
您需要在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中打开备份的项目,然后检查管理器。 您应该在电话旁边已经有一个绿点(假设所有配置都在工作),或者应该正在收集调试符号。 让此完成,然后构建您的项目。 它不需要成功构建,也不必将应用程序安装到手机上,有时甚至不需要构建,Xcode可能是一个善变的情妇。
在Xcode 4.2中关闭项目。
打开在Xcode 4.0中备份的项目,您现在应该能够像往常一样构建并安装到手机上。
在重新启动计算机之前,Xcode 4.0 / 4.1现在应该可以使用您的设备进行开发。
View Controller和Navigation Controller设置或选项名称(属性检查器)
定义上下文(选中)未选中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.