我在新文件中创建了一个新的Swift类
import UIKit
import AVFoundation
class recordSoundsViewController: UIViewController, AVAudioRecorderDelegate {
var audioRecorder: AVAudioRecorder!
var recordedAudio: RecordedAudio! // new object gives error
现在我想通过创建一个新对象在另一个类中使用它。
{{1}}
但是Xcode给了我错误"使用未声明的类型RecordedAudio"所以我卡在那里此处发布了类似的问题:How do I import a Swift file from another Swift file? 但这些解决方案都不适合我。顺便说一下,这是Udacity swift课程的一部分。谢谢,任何帮助将不胜感激。
答案 0 :(得分:45)
在左侧的Project Navigator中,选择您声明RecordedAudio的文件。
现在,在右侧的文件检查器中,查看目标成员资格。应该检查应用目标(不是测试目标),类似于:
如果没有,请检查一下!现在一切都会好的。
答案 1 :(得分:2)
在我的情况下,我不得不从项目导航器中删除引用,然后再次添加它们(目标成员资格不是问题)。
答案 2 :(得分:2)
如果您的班级在另一个模块中,请确保您的班级和类初始化程序具有 public 访问修饰符。
答案 3 :(得分:0)
对我来说,我必须检查类中的目标成员身份,就像在ViewController中一样(我有一个TodayExtension)
答案 4 :(得分:0)
我只需要做满蒙蒂就可以正常工作...
也可以在类定义上方的行中添加@objc,并使其public class
更加明确,还可以将public
添加到您的方法中。哦,请确保您是NSObject
的子类。
如果您不愿意让您的初始化程序出现,我也刚刚注意到Swift 4.2在这里还有很多问题。我切换回Swift3。没问题...
答案 5 :(得分:0)
尝试切换所有权、清理、重新启动 x-code、删除并重新添加引用但没有结果。
pod install
为我修复了它,很奇怪,因为我的类不是来自另一个模块或库。