Ho ricevuto un errore su Xcode che diceva che non c'erano informazioni sul controller di visualizzazione.
Impossibile inserire una nuova connessione outlet: Impossibile trovare informazioni per la classe denominata
Perché sta succedendo?
Ho ricevuto un errore su Xcode che diceva che non c'erano informazioni sul controller di visualizzazione.
Impossibile inserire una nuova connessione outlet: Impossibile trovare informazioni per la classe denominata
Perché sta succedendo?
Risposte:
Ecco alcune cose che possono risolvere questo problema (in ordine crescente di difficoltà):
Incolla manualmente
@IBOutlet weak var viewName: UIView!
// or
@IBAction func viewTapped(_ sender: Any) { }
e controlla il trascinamento su di esso. (Cambia il tipo secondo necessità.) Vedi anche questo .
Chiudi completamente Xcode e riavvia il tuo progetto.
alias purgederiveddata='rm -rf ~/Library/Developer/Xcode/DerivedData/*'
al tuo ~ / .bashrc per usare il comando purgederiveddata
per cancellare con un comando
Oppure, se nessuna delle opzioni precedenti funziona, digita prima il nome dell'outlet nel file, @IBOutlet weak var headerHeightConstraint: NSLayoutConstraint!
quindi fai clic e trascina dall'outlet nel pennino alla variabile appena creata a livello di programmazione. Dovrebbe funzionare senza il fastidio di pulire, costruire ed eliminare nulla.
Esegui solo i due passaggi seguenti per eliminare questo errore
Ora prova ad aggiungere l'azione o l'outlet. Questo è tutto.
Happy Coding
Nessuno dei suggerimenti nella risposta migliore ha funzionato per me. Stava impazzendo. Quindi ho notato che Assistant Editor era stato in qualche modo impostato su Manual ed ero sul ViewController.swift (Interface) invece che sul file ViewController.swift.
Modificato e risolto il problema. Un po 'imbarazzante ma ehi, stiamo tutti imparando.
Ho avuto lo stesso problema. Mi sono stancato sotto soluzioni ma non ha funzionato:
Clean Project (cmd + shift + k)
e persino Clean Project Build (cmd + shift + alt + k)
Deleted Derived data
e Module Cache content
Di seguito la soluzione alternativa a questo problema:
IBOutlet / IBAction
manualmente (copia incolla preferito)Utilites
finestraConnection Inspector
IBOutlet
e IBAction
scritto nel file di origine con Interface Builder.Ho avuto lo stesso problema. Mi sono reso conto che l' Manual
elemento X-Code è stato selezionato quando ho provato a creare un outlet mediante il controllo-trascinamento
Dopo averlo impostato su automatico ha funzionato
Ho risolto questo problema creando a livello di codice le etichette e i campi di testo, quindi trascinando i comandi dai piccoli cerchi vuoti a sinistra del codice ai componenti dello Storyboard. Per illustrare il mio punto: ho scritto @IBOutlet weak var HelloLabel: UILabel!
e poi premuto Comando e trascinato il codice nel componente sullo storyboard.
@IBOutlet weak var myButton: UIButton
ho usato lo stesso processo per impostare @IBAction func doSomething(_ sender: Any) { }
e quindi ho collegato questa funzione a UIButton sul mio storyboard. Grazie per aver condiviso questo @KuboAndTwoStrings
~/Library/Developer/Xcode/DerivedData/
Ho trovato una soluzione più semplice dato che questo bug si trova su XCODE 9.
Passo uno vai al tuo viewcontroller e scrivi manualmente la proprietà che vuoi connettere come nell'esempio sotto, assicurati di usare il formato seguente.
@IBOutlet domande var deboliStackView: UIStackView!
Il secondo passaggio va allo storyboard e collega la vista o qualunque cosa tu stia provando a connetterti alla proprietà che hai creato nel passaggio 1.
Quanto sopra ti farà risparmiare tempo per rimuovere e pulire i dati derivati.
Ho ricevuto questo errore quando ho rinominato la classe. Quindi l'ho risolto semplicemente seguendo i passaggi seguenti
Product
->Clean
Restart
l'XcodeNel mio caso, bc, ho scelto un nuovo file UIViewController in IB e poi ho provato a trascinare il tasto Ctrl e trascinarlo su questo nuovo controller senza prima rimuovere le connessioni precedenti in Connections Inspector. Rimuovere prima quelli e riprovare.
Ho selezionato l' opzione Automatica per selezionare il file ViewController.swift. E poi riesco a prendere sbocchi.
Eseguire i due passaggi seguenti solo per eliminare questo errore.
1. Clean Project using Product -> clean.
2. Run the Project.
Ora prova ad aggiungere / collegare le azioni o le prese.
Funzionando bene per me per molte volte.
È successo quando ho aggiunto un Swift
file in un Objective-C
progetto.
Quindi, in questa situazione, ciò che puoi fare è. .
Select
MY_FILE.Swift
>>
Delete
>>
Remove Reference
Select
MY_FOLDER
>>
Add
MY_FILE.Swift
Voila ! You are good to go .
Soluzione più semplice: - Ho usato xCode 7 e iOS 9.
nel tuo .m
elimina #import "VC.h"
salva .m e collega di nuovo il tuo outlet funziona bene.
Ho usato xCode 7 e iOS 9.
nel tuo .m
Elimina #import "VC.h"
salva .m e collega di nuovo il tuo outlet funziona bene.
nel tuo .m
Inserisci #import "VC.h"
salva .m