iOS Xcode, 解决“Could not insert new outlet connection”的问题。

在Xcode中,我们能够在StoryBoard编辑界面或者是xib编辑界面中通过“Control键+拖拽“的方式将某个界面元素和相应的代码文件连接起来,在代码文件里创建outlet。


只是。假设你的运气不太好,运行以上操作的过程中你可能会遇到以下这种错误:

Could not insert new outlet connection: Could not find any information for the class named "xxx".

当中的“xxx”就是你的目标代码文件里的类名。


假设你遇到这种问题,拿着上面的错误消息去百度一下会发现非常多相关的内容,有各种各样的解决方法,只是效果就众说纷纭,有人说这种方法好用。有人说那个方法好用,在这里就整理一下常见的一些情况和相应的解决方法。


首先第一种情况是最简单的,也是最easy被忽略的,就是你在新建类的时候没有选择将这个类增加到相应的“Target”中。

检查方法非常easy,选中你须要操作的类的.m文件。在“File inspector”界面的“Target Membership”中确认相应的“Target”有没有选中。假设没有选中就说明你在创建类的时候犯了各小小的错误。

改动方法非常easy,直接在“File inspector”界面的“Target Membership”中选上相应的target就好了。


假设你的情况和以上不符,有可能是你的项目Derive文件有点问题,解决方法有以下几种。原理都差点儿相同,就是尝试重建项目的一些后台文件。


1. 又一次将文件增加项目

操作步骤就是选中出问题的.m和.h文件,点删除键,然后选“Remove Reference”。这样就不会真正删除文件。

接着选“File -> Add Files to ...”菜单,在文件选择界面选择刚才的.m文件和.h文件将他们又一次增加项目中。


2. 直接删除DeriveData

操作步骤是关闭当前项目,然后关闭Xcode,然后通过Terminal或者是Finder找到以下的文件夹:

~/Library/Developer/XCode/DerivedData

在里面找到以你的项目开头的文件,将他们删除。

接着又一次启动Xcode


3. 在Organizer中删除项目的DeriveData

假设你对Mac操作系统不了解,不知道假设操作第2种解决方法,有一个更加直接的方法,就是在Xcode中选择“Windows->Organizer”,然后选择“Projects”,选中你正在处理的项目,点击“DeriveData”相应的“Delete”button。Xcode会删除该项目的DeriveData,然后自己主动又一次生成一个。


希望上面的方法能够帮助你解决“Could not insert new outlet connection”的问题。

posted on 2017-08-20 12:34  blfbuaa  阅读(161)  评论(0编辑  收藏  举报