Xcode wird nicht erkannt ein neues Swift-Klasse
Ich haben ein neues Swift-Klasse in eine neue Datei
import Foundation
class RecordedAudio: NSObject{
var filePathUrl: NSURL!
var title: String!
}
und jetzt will ich es benutzen, die innerhalb einer anderen Klasse durch erstellen eines neuen Objekts.
import UIKit
import AVFoundation
class recordSoundsViewController: UIViewController, AVAudioRecorderDelegate {
var audioRecorder: AVAudioRecorder!
var recordedAudio: RecordedAudio! // new object gives error
Aber Xcode gibt mir den Fehler "Verwendung der nicht deklarierte Typ RecordedAudio" also ich hab dort stecken. Eine ähnliche Frage wurde hier gepostet: Wie Importiere ich eine Swift-Datei von einem anderen Swift Datei?
aber keine dieser Lösungen bei mir funktioniert. BTW, das ist Teil des Udacity swift Klasse. Vielen Dank, jede Hilfe würde geschätzt werden.
- Manchmal ist alles, was Sie brauchen, ist ein guter Neustart von Xcode. ⌘-Quit Xcode, dann erneut öffnen und sehen, ob das Problem weiterhin besteht.
- Für mich, manchmal muss ich neu starten, es 4-5 mal, ziemlich buggy
- Vielen Dank für die Antworten Jungs, ich habe xcode neu starten ein paar mal, aber hat nicht funktioniert.
- Sauber, CMD+k für mich gearbeitet
Du musst angemeldet sein, um einen Kommentar abzugeben.
Im Projekt-Navigator auf der linken Seite, wählen Sie die Datei, in der Sie deklariert RecordedAudio.
Nun, in der Datei-Inspektor auf der rechten, Blick auf das Ziel der Mitgliedschaft. Die app Ziel (nicht die Test-target) sollte überprüft, ähnlich wie dieses:
Wenn nicht, prüfen Sie es! Und jetzt wird alles gut.
In meinem Fall hatte ich zum entfernen der Verweise im Projekt-navigator, und fügen Sie Sie dann wieder (das Ziel der Mitgliedschaft war nicht das problem).
Hatte ich nur zu tun, die Full Monty, um es zu arbeiten...
Vielleicht auch hinzufügen @objc zu der Zeile oberhalb der Klassendefinition und vielleicht machen Sie es
public class
nur eindeutig sein und möglich hinzufügenpublic
zu Ihren Methoden. Oh, und stellen Sie sicher, Sie sind UnterklassenNSObject
.Wenn Sie stecken immer Ihre initialiser zu zeigen, ich habe auch gerade bemerkt, dass Swift 4.2 hat viel mehr Probleme hier. Ich wechselte zurück zu Swift 3. Keine Probleme...
Für mich, ich hatte zu prüfen, das gleiche Ziel Mitgliedschaften in der Klasse wie in der ViewController (ich hatte ein TodayExtension)