【发布时间】:2014-10-24 15:06:12
【问题描述】:
编辑:感谢下面答案背后的人,他修复了未知类。但是,谁能告诉我要关闭的代码是否正确?我正在度假,直到回来才能编程。
我正在用 Swift 开发一个应用程序。目前,我正在制作一个信息屏幕(法律声明、信用证、文档等),该屏幕将以模态方式显示在主屏幕上方。
预期的行为是,当按下按钮在InfoViewController 中触发Dismiss 时,模态视图控制器被解除。
这是我尝试使用的代码:
//This is InfoViewController, the swift file used to conorol the info screen.
import UIKit
class InfoViewController: UIViewController {
@IBAction func Dismiss(sender: AnyObject) {
self.dismissViewControllerAnimated(true, completion: {});//This is intended to dismiss the Info sceen.
println("pressed")
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
故事板的布局如下:
当我按下按钮时,应用程序崩溃并且不会关闭模态视图控制器。
它编译,表明它不是语法错误。
这是 LLVM 调试器输出:
2014-08-30 20:02:20.571 CryptoCalc[799:244086] 17545849:_UIScreenEdgePanRecognizerEdgeSettings.edgeRegionSize=13.000000 //不相关的东西被删除了。 2014-08-30 20:03:03.756 CryptoCalc [799:244086] Interface Builder 文件中的未知类 InfoViewController。 2014-08-30 20:03:20.485 CryptoCalc[799:244086]-[UIViewController Dismiss:]:无法识别的选择器发送到实例 0x14d57990 2014-08-30 20:03:20.489 CryptoCalc[799:244086] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[UIViewController Dismiss:]:无法识别的选择器发送到实例 0x14d57990” * 首先抛出调用栈: (0x2238be2f 0x2f46bc8b 0x22391179 0x2238f097 0x222c11f8 0x259b9fef 0x259b9f91 0x259a4d13 0x259b99fd 0x259b96d7 0x259b2fa1 0x25989a09 0x25bfbae3 0x259884a1 0x2235257f 0x2235198f 0x2234fff5 0x2229e611 0x2229e423 0x297f80a9 0x259e8485 0x73720 0x7375c 0x2f9f1aaf) libc++abi.dylib:以 NSException 类型的未捕获异常终止
如果您需要更多信息,请告诉我。非常感谢。
【问题讨论】:
标签: xcode debugging swift modal-dialog xcode6