• 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”就是你的目标代码文件中的类名。

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

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

    检查方法很简单,选中你需要操作的类的.m文件,在“File inspector”界面的“Target Membership”中确认对应的“Target”有没有选中,如果没有选中就说明你在创建类的时候犯了各小小的错误。

    修改方法很简单,直接在“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”按钮,Xcode会删除该项目的DeriveData,然后自动重新生成一个。

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

  • 相关阅读:
    ARM开发工具软件命令具体解释---嵌入式回归第三篇
    Java模拟公司置办货物系统(二)
    springmvc mybatis 声明式事务管理回滚失效,(checked回滚)捕捉异常,传输错误信息
    Django Drops
    从 "org.apache.hadoop.security.AccessControlException:Permission denied: user=..." 看Hadoop 的用户登陆认证
    iOS中Storyboard使用要点记录
    ACdream 1084 寒假安排(阶乘素因子分解)
    【死磕Java并发】-----J.U.C之AQS:CLH同步队列
    使用freemarker做邮件发送模板
    springboot 使用freemarker自定义标签
  • 原文地址:https://www.cnblogs.com/yujidewu/p/7306752.html
Copyright © 2020-2023  润新知