自定义控件出现[super initWithCoder:aDecoder]崩溃问题解决

今天尝试了一下autolayout与storyboard/xib来做UI,用起来还是感觉蛮得心应手的,再也不用担心写繁琐的UI代码了。故此也打算今后用xib来实现自定义控件(UIView Subclass),不料在做一个小例子的过程中遇到一个崩溃问题,崩溃位置发生在[super initWithCoder:aDecoder]的地方。

查看崩溃时的调用堆栈,竟然有很多个initWithCoder:函数,感觉像是无限循环递归调用一样。根据这篇文章的答案,才发现是因为自己将xib中view的Custom Class设置为ChildView(自定义控件的名称,继承于UIView)。

实际上只需要将xib中File‘s Owner设置为ChildView就行了。

想用xib实现自定义控件,并且在xib中嵌套xib,可以看这个教程:iOS Interface Builder:在.xib文件中加载另一个.xib文件

时间: 2024-12-28 01:22:15

自定义控件出现[super initWithCoder:aDecoder]崩溃问题解决的相关文章

原装win8系统电脑崩溃问题解决

原装win8系统电脑崩溃问题解决 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:之所以撰写本篇关于win8原装系统电脑崩溃的博文,一是要吐槽一下原装win8让博主遭受了一系列的痛苦,二是要总结一下此次系统出故障的解决经验并共享,三是要提醒一下我和读者,千万不要懒惰而疏于对重要数据的备份. win8原装系统的罪过 不仅我在这里吐槽,很多人买电脑原装的是win8,然后担心有些软件不兼容,所以希望能装个双系统.但是到目前为止,我周围一些被公认为"电脑高

wireshark Capture Filter 抓包时崩溃问题解决方法

wireshark过滤抓包时,capture fillter填写完后会崩溃的问题,报The link type of interface \Device\NPF_{11A6562D-E3B3-32BE-AEA1-3ACE8EBC1949} was not specified.错误. 点击Compile selected BPFs直接崩溃. 最后查出来是因为1.11.2导致的问题,我升级到1.11.3后,就没有这个问题了.坑呀. wireshark Capture Filter 抓包时崩溃问题解决

UIPFULL!DllCanUnloadNow崩溃问题解决

在软件开发过程中遇到一个崩溃问题,通过windug定位,得到信息是:UIPFULL!DllCanUnloadNow 后来发现这个是百度输入法的原因,卸载百度输入法就可以了. 还有,在使用搜狗输入法是也遇到过崩溃问题,卸载后问题不存在! 本人申请微信公众号:biggerlaugh,欢迎关注.

jquery uploadify上传文件插件导致浏览器崩溃问题解决方法

自谷歌浏览器更新到(版本39.0.2171.99 )后,访问上传文件界面浏览器就崩溃了,而其他的浏览器不会出现问题. 出现这种问题的原因就是谷歌浏览器缓存问题,但将访问该jsp页面路径添加上时间戳后无法解决问题,将界面引入uploadify.js中也添加了个随机变量还是不行.最后将引入js换成下面形式就解决了: 代码如下: [javascript] view plaincopyprint? document.write("<script type='text/javascript' &qu

keil mdk 菜单 “project” 崩溃问题解决

今天发现我的 Keil MDK 点击 Project 菜单立即崩溃. 简单粗暴的处理方法:重装keil ,但是依然点击 project 崩溃. 通过搜索发现解决办法:清除最近项目列表即可. 操作如下: 1.运行 REGEDIT 2.删除 计算机\HKEY_CURRENT_USER\Software\Keil\uVision5\Recent Projects 的全部内容, 一切OK ! 本人原创博客欢迎转载.引用,注明出处即可.

Unity 崩溃问题解决方法——之一

友情提示:工作随记,不喜勿喷 注意:文艺青年可以略过,暴力青年欢迎采纳 Library文件夹 Unity每次编译都会生成这个东西,不用担心丢失的问题.所以,干掉他! 选中 + Delete   或者  选中 + Shift  + Delete 网上看了很多方法,就觉得这个简单,粗暴,是我喜欢的类型. 优点:上面说了 缺点:如果工程过大,重新编译时间会比较长.(但是对于查Log日志来说,相对快点)

initWithFrame和initWithCoder使用技巧,以及他们什么时候被调用,自定义控件必须具备三个方法initWithFrame和initWithCoder以及drawRect

////  MJLockView.m//  03-手势解锁////  Created by apple on 14-4-20.//  Copyright (c) 2014年 itcast. All rights reserved.// #import "MJLockView.h" @implementation MJLockView//当你通过代码创建控件就会调用这个方法- (id)initWithFrame:(CGRect)frame{    self = [super initWi

iOS - (instancetype)initWithCoder:(NSCoder *)aDecoder采坑小记

一般我们封装控件时 既要支持xib 又要支持手码 一般我们会在以下两个方法里执行我们的自定义操作.然后关于initWithCoder的小坑来了. /// 手码 - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // 自定义操作 [self initData]; [self initUI]; } return self; } /// xib - (instanc

iOS - 创建可以在 InterfaceBuilder 中实时预览的自定义控件

一.需求实现一个前后带图标的输入框 这是一个简单的自定义控件,很容易想到自定义一个视图(UIView),然后前后的图标使用 UIImageView 或者 UIButton 显示,中间放一个 UITextField 就可以了 实现方式上可以 InterfaceBuilder 创建,也可以使用纯代码实现,这个可以根据自己喜好及项目确定 二.实现 InterfaceBuilder 中实时预览 要实现上面的一个需求,相信对大多数人来说并不难,本文主要讲解怎么让自定义控件支持纯代码创建,并且也支持在 In