我一直在关注本教程,只需按一下视图控制器中的按钮即可加载xib: http://www.thomashanning.com/loading-a-view-from-a-xib/
在这一行:
if let customView = NSBundle.mainBundle().loadNibNamed("CustomView", owner: self, options: nil).first as? CustomView {
我收到以下错误: 使用未声明的类型'CustomView'
我已经多次按照教程的每一步,我不知道我错过了什么。任何人都可以帮助了解可能出现的问题吗?
答案 0 :(得分:2)
错误表明您错过了宣布课程的步骤
使用未声明类型'CustomView'
可能错过的一件事情是:
您没有创建CustomView.swift
文件,教程跳过了这一部分。该文件应该包含以下内容:
import UIKit
class CustomView: UIView {
@IBAction func ButtonDidPressed(sender: AnyObject) {
print("Button Pressed")
}
}
相应的错误(在编辑器中):
使用未声明类型'CustomView'
在Storyboard Identity Inspector
中,您没有正确设置类名。
相应的错误(在运行时间内):
Interface Builder文件中的未知类CustomView。
您的班级声明与通话不同,但我认为您应该能够在Xcode
编辑器中识别出这种情况。
相应的错误(在编辑器中):
使用未声明类型'CustomView'
答案 1 :(得分:0)
您可以使用这种方式为UIView类和View / .Xib提供相同的名称
let alert = NSBundle.mainBundle().loadNibNamed("PromotionMenu", owner: nil, options: nil)[0] as? PromotionMenu
alert?.delegate = self
self.view.addSubview(alert!)
答案 2 :(得分:0)
谢谢大家的详细解答,遗憾的是他们都没有帮助。
在发生的事情中没有任何逻辑,因为我无法创建任何类型的任何新类并且无错误地调用它们。
所以经过几个小时的挫折我创建了一个新项目,将所有旧文件拖入其中(除了plist),运行后我能够创建新类并创建它们的实例而没有错误。强>