[英]Xcode won't recognize a new Swift class
我在一個新文件中創建了一個新的 Swift 類
import Foundation
class RecordedAudio: NSObject{
var filePathUrl: NSURL!
var title: String!
}
現在我想通過創建一個新對象在另一個類中使用它。
import UIKit
import AVFoundation
class recordSoundsViewController: UIViewController, AVAudioRecorderDelegate {
var audioRecorder: AVAudioRecorder!
var recordedAudio: RecordedAudio! // new object gives error
但是 Xcode 給了我錯誤“使用未聲明的類型 RecordedAudio”,所以我被困在那里。 此處發布了一個類似的問題: 如何從另一個 Swift 文件導入 Swift 文件? 但這些解決方案都不適合我。 順便說一句,這是 Udacity swift 課程的一部分。 謝謝,任何幫助將不勝感激。
在左側的 Project Navigator 中,選擇您聲明 RecordedAudio 的文件。
現在,在右側的文件檢查器中,查看 Target Membership。 應該檢查應用程序目標(不是測試目標),類似於:
如果沒有,請檢查它! 現在一切都會好起來的。
在我的情況下,我必須從項目導航器中刪除引用,然后再次添加它們(目標成員身份不是問題)。
我只需要做完整的蒙蒂才能讓它工作......
也可以將@objc 添加到您的類定義上方的行中,並可能將其設為public class
,以便明確並且可能也將public
添加到您的方法中。 哦,確保你是NSObject
的子類。
如果你在讓你的初始化程序出現時遇到困難,我也剛剛注意到 Swift 4.2 在這里有很多問題。 我切換回 Swift 3。沒問題...
如果您的類在另一個模塊中,請確保您的類和類初始化器具有公共訪問修飾符。
對我來說,我必須檢查類中與 ViewController 中相同的目標成員資格(我有一個 TodayExtension)
嘗試了所有權切換、清理、重新啟動 x 代碼、刪除並重新添加引用但沒有結果。
一個pod install
為我修復了它,很奇怪,因為我的類不是來自另一個模塊或庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.