Storyboard “Principale”, ma non ottenere una UITableView quando si utilizza UITableViewController

Vado attraverso questo tutorial, “Opzione 2: Prototipo di Cellule”
Ho implimented tutti i passaggi, ma, il seguente codice mi dà errore:

@interface MTViewController : UITableViewController

@end

il messaggio di errore è:

istanziato view controller con l’identificatore “UIViewController-BYZ-38-t0r” da storyboard “Principale”, ma non ottenere una UITableView.’

Qui è che cosa ho provato, ho cambiato UITableViewController per UIViewController e l’errore è andato via. Ma, tableview rimane vuoto. Potete dirmi il perché di questo ?

  • Cosa significa vuoto? Quando si aggiunge un Controller di Visualizzazione per il vostro storyboard è la vaniglia. È necessario aggiungere elementi ad esso.
InformationsquelleAutor Fred Shmed | 2015-09-30



7 Replies
  1. 18

    Provare a cambiare la super classe UIViewController o modificare il controller di storyboard per la TableView Controller

    @interface MTViewController : UIViewController, UITableViewDataSource, UITableViewDelegate
    
    @end
  2. 7

    Trascinare una nuova istanza della Table View Controller nel tuo storyboard, copiare le celle che hai creato nel tuo precedente controller in una nuova.

    Questo errore si è verificato, probabilmente perché è stato utilizzato il valore predefinito UIViewController creata da XCode, che non è un UITableViewController.

    • molto sottile problema e la soluzione più ovvia (supponendo che apprezzate il problema). ora, perché il mio cell proprietà tornare NIL?
    • questo è strano ma è vero. Avuto lo stesso problema, risolto come hai descritto
  3. 5

    Ho incontrato esattamente lo stesso problema come voi.
    Probabilmente stai usando un UIViewController invece di un UITableViewController nello storyboard.

    NOTA:
    Solo una sottoclasse di una custom UITableViewController in storyboard non è sufficiente. Vedrai la differenza:
    differenza tra UIViewController e UITableViewController

    Quindi devi trascinare un UITableViewController dalla libreria, quindi spostare tutte le cose(cellule) ad esso. Non dimenticare di controllare le associazioni e le auto layout in caso di rottura.

    E, naturalmente, non è possibile spostare la tableview alla radice di UIViewController, solo che non funziona così. =)

  4. 3

    Ho avuto questo problema anch’io. Ho creato originariamente pianura UIViewController quindi ho deciso di usare UITableViewController. Il problema è che ho dimenticato di impostare storyboard ID sul nuovo controller, e cambiare in qualcosa di altro sul vecchio controller, altrimenti verrà creata un’istanza vecchio controller da storyboard e questo problema si verifica.

  5. 2

    In realtà si sta utilizzando UIViewController non UITableViewController. Eliminare la visualizzazione predefinita controller e trascinare nuovo TableViewController nella storyboard. Perché il ViewController non avendo TableView, ma cercando di celle di carico.

    Soluzione è semplice : Eliminare ViewController e aggiungere TableViewController

    Quindi devi cambiare il nome della classe per MTViewController o Il Nome della Classe

  6. 0

    assicurarsi che l’origine dati è impostato su auto.

    • Puoi essere più preciso, o anche condividere un po ‘ di codice che aiuta a capire la tua risposta?
    • Utilizzare commento per questo tipo di info.

Lascia un commento