it-swarm.com.de

Swift - "Verwendung eines nicht aufgelösten Bezeichners"

Ich lerne Swift! Ich möchte ein Main-Interface auf xib anlegen. Aber ich habe den Fehler "Verwendung eines nicht aufgelösten Bezeichners".

 enter image description here

Code hinzufügen aus MainViewController

import Foundation

public class MainViewController : BaseViewController {

    override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)

        // TODO: Write your test code here
        // ...
    } }

UPD: (Bild hinzufügen)  enter image description here

4
Artem Tutov

1) Klicken Sie mit der rechten Maustaste auf Ihren MainViewController.Swift.

2) Wählen Sie Show File Inspector

3) Schauen Sie auf der rechten Seite auf Target Membership.

4) Fügen Sie Ihre Klasse zum Ziel hinzu, indem Sie das Kontrollkästchen aktivieren :)

16
Breek

Sie haben die Klasse wahrscheinlich nicht zum Ziel hinzugefügt. Klicken Sie auf die Klasse MainViewController und öffnen Sie die Registerkarte utilities in der oberen rechten Ecke in Xcode:

 enter image description here

Stellen Sie sicher, dass das entsprechende Ziel markiert ist.

EDIT: Anscheinend haben Sie dort keine Zielmitgliedschaft - was an und für sich bizarr ist. Versuchen Sie, die MainViewController-Klasse von Grund auf neu zu erstellen, und stellen Sie sicher, dass das richtige Ziel ausgewählt ist:

 enter image description here

0
Mike

Nur ein Tipp für diejenigen, die diese Frage mit meiner Frage gefunden haben.

Diese Ausgabe hat mich tagelang gequält! ???? Ich kann das Projekt ausführen, aber das rote Fehlerzeichen wurde immer angezeigt. Zuerst wurde dies Xcode (Sorry, Xcode) vorgeworfen.

Aber nachdem ich alle Antworten in diesem Thread gelesen und den Target Membership meiner Quelldatei überprüft hatte, wurde mir klar, dass ich falsch war, Xcode zu beschuldigen.

Die Datei, in der dieses Problem gemeldet wurde, enthielt drei Target Membership: die Hauptdatei, die für Tests und die andere für UI-Tests. Die Variable, auf die es sich bezieht, befand sich jedoch in einer Datei, die nur einen Target Membership hatte, den Hauptcode.

Um es zusammenzufassen: Überprüfen Sie den Target Membership der Datei, in der das Problem gemeldet wurde, und der Datei, in der der unresolved identifier deklariert ist. Stellen Sie sicher, dass Membership das spätere Formular enthält.

0
0xa6a