【发布时间】:2014-07-25 06:59:55
【问题描述】:
我正在尝试为我正在使用的 iOS8 键盘创建我自己的自定义视图类,当我创建一个扩展 UIView 的新类时,我在加载键盘时崩溃并出现 Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP,subcode=0x0) 错误.错误显示在class KeyButton: UIView { 行上,我正在努力进一步调试。我最初试图扩展UIButton,但没有成功,所以我将其更改为UIView,但没有进一步的运气。
我知道 Swift/iOS8 会有一些初期问题,但希望这是可以解决的!
编辑
全类代码:
import UIKit
class KeyButton: UIView { /* This is where the app crashes, apparently */
init(frame: CGRect) {
super.init(frame: frame)
// Initialization code
}
/*
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
override func drawRect(rect: CGRect)
{
// Drawing code
}
*/
}
【问题讨论】:
-
你能给我们看一些代码吗?如果不查看问题的根源,就很难诊断问题。
-
我创建了一个新的 Cocoa Touch 类,让它扩展
UIView,然后将UIView拖入我的键盘笔尖,并将类更改为KeyButton。将主笔尖中的视图设为UIView不会使应用程序崩溃,而将其设为keyButton会使应用程序因上述错误而崩溃。没有代码被修改,但我会发布课程的完整代码 -
奇怪...你也可以发布回溯吗?
-
控制台中只有
(lldb)(调试扩展很有趣!),但我想我有回溯,突出显示在dropbox.com/s/8xmylpptdhvpk7w/…崩溃的部分