Ho il seguente codice e sono confuso su questo messaggio di errore:Cosa c'è che non va qui: membro di istanza non può essere utilizzato su tipo
membro di istanza 'mydate' non può essere utilizzato su tipo 'TableViewController'
Codice:
class TableViewController: UITableViewController {
let mydate = NSDate()
let items = [
(1, 9, 7, "A", mydate),
(2, 9, 7, "B", mydate),
(3, 9, 7, "C", mydate),
(4, 9, 7, "D", mydate)
]
Quando scrivo quanto segue, posso costruire, ma non so il motivo per cui il frammento di oder non funziona:
class TableViewController: UITableViewController {
let mydate = NSDate()
let items = [
(1, 9, 7, "A", nil),
(2, 9, 7, "B", mydate),
(3, 9, 7, "C", mydate),
(4, 9, 7, "D", mydate)
]
ho incontrato la stessa cosa. La tua opzione più pulita è definirli nella classe, ma inserirli nella funzione viewDidLoad(). Questo ti permetterà di nidificare tutto ciò che desideri senza questi fastidiosi errori di compilazione. –
@ MarkLöwe, che "non" è la soluzione più pulita ". E questi errori del compilatore sono validi e coerenti con il design della lingua. La soluzione più pulita è la soluzione scritta qui. Inizializzare in 'viewDidLoad' potrebbe non essere nemmeno possibile in classi basate su non viewcontroller. Non inganniamo le persone con commenti ridicoli. – avismara
interno statico var mydate: NSDate; articoli statici interni; Questo è il modo semplice per risolvere questo –