outlet删除不完全

今天在用iOS写个计算器的时候,遇到的一个小bug,新手,太新了,不之所错。

直接上码:

Terminating app due to uncaught exception ‘NSUnknownKeyException‘, reason:

‘[<SecondViewController 0x7f83435347d0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key txtscreen.‘

造成错误的原因:

1、建了一个outlet:txtscreen;

2、然后想删除它,就把它的代码删了;

3、运行程序后,出现上述错误;

因为只在代码处删除该outlet,这是不完全的删除(既没有彻底的删除txtscreen),在该ViewController中还是有txtscreen,如图,一个小感叹号。

所以,如果出现类似的代码,那就是因为删除不彻底导致的。

解决办法:选中对应的ViewController的edit,右击,在Outlets中把该txtscreen删除就可以了。如图:

时间: 2024-07-30 10:02:39

outlet删除不完全的相关文章

IOS 错误原因

当xcode提示以下错误时,很可能的原因是由于ViewController中的View在Controller中连接了outlet,然后又删除了Controller中对应的属性,导致xcode找不到这个属性而报错 [UILabel copyWithZone:]: unrecognized selector sent to instance 0x7f8c53f697 解决办法: 找到进入这个VC出错的ViewController,根据错误提示,确认是何种View,然后在场景中,一个一个View查找其

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”就是你的目

Ember.js 入门指南——新建、更新、删除记录

前一篇介绍了查询方法,本篇介绍新建.更新.删除记录的方法. 本篇的示例代码创建在上一篇的基础上.对于整合firebase.创建route和template请参看上一篇,增加一个controller:ember g controller articles. 1,新建记录 创建新的记录使用createRecord()方法.比如下面的代码新建了一个aritcle记录.修改模板,在模板上增加几个input输入框用于输入article信息. <!--  app/templates/articles.hbs

ios开发之--解决“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". 当中的"

MariaDB(MySQL)创建、删除、选择及数据类型使用详解

一.MariaDB简介(MySQL简介略过) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB. MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL A

C# 远程服务器 创建、修改、删除 应用程序池 网站

首先 C# 操作 站点 需要 引用Microsoft.Web.Administration.dll 文件,创建站点我们一般需要 远程服务的IP,网站名称.端口.物理路径:这里默认网站名称和应用程序池名称一致. 应用程序池默认不启动,应为刚创建站点是没有对应真实的物理文件,修改 队列长度.启动模式.回收时间.最大工作进程, 以及日志路径.修改的时候如果修改站点物理路径的话,我们需要把文件 从旧得目录拷贝到新的目录下,删除站点就比较简单了. 但是站点应用程序池的停止 和启动就比较难搞了,不是调用st

对IO流的操作(文件大小,拷贝,移动,删除)

import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.SequenceInputStream; class LjyFileClass { /*LjyFileClass工具类使用需知: * * 1.计算

docker私有仓库删除image

docker仓库存放着公司内部的镜像.时间长了难免存在一些废弃的镜像在里面.如果不删除造成空间的浪费.下面就简单的看看仓库中的镜像是怎么删除的. 第一步:registry启动依赖config.yml配置文件:在默认文件的storage区域中添加delete_enable_ture配置项.也可以在启动时候指定-e添加.允许删除镜像: 配置文件: 第二步:下载registry镜像并启动容器. docker run  -d -v /conf/:/etc/docker/registry -v /opt/

删除datatable中的行

今天遇到一问题,无论如何也删除不干净datatable.我想全部删除.但总是得不到想要的结果. for (int i = 0; i < dt.Rows.Count; i++) { //dt.Rows.Remove(dt.Rows[i]); dt.Rows[i].Delete(); Console.Write("dr.rows.count" + dt.Rows.Count + "\r\n删除了数据" + i.ToString() + "\r\n&quo