Ho un TableViewController personalizzato con un TableViewCell personalizzato. Ho creato un seguito sullo storyboard dalla cella a un altro ViewController per visualizzare i dettagli ma prepareForSegue non viene mai chiamato. Ho provato a usare didSelectRowAtIndexPath ma non è nemmeno chiamato. Sospetto che possa essere perché creo le celle personalizzate dinamicamente e non ottengono il seguito dallo storyboard a loro assegnato, ma non sono riuscito a trovare un modo per farlo. Il "newSegue" dal mio oggetto BarButtonItem viene chiamato normalmente.prepareForSegue non chiamato da custom uitableviewcell
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
println("PREPARE FOR SEGUE")
if segue.identifier == "newSegue" {
println("PREPARE FOR NEW SEGUE")
} else if segue.identifier == "detailSegue" {
println("PREPARE FOR DETAIL SEGUE")
}
}
override func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {
println("You selected cell!")
}
ho il sospetto che potrei fare qualcosa di sbagliato al momento di definire il mio cellulare personalizzato:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let CellIndentifier: NSString = "ListPrototypeCell"
var cell : MyTableViewCell = tableView.dequeueReusableCellWithIdentifier(CellIndentifier) as MyTableViewCell
var myClass: MyClass = self.myList.objectAtIndex(indexPath.row) as MyClass
cell.setCell(author: myClass.author, message: myClass.message)
return cell
}
Qualsiasi aiuto?
Avete impostato il controller in cui questo codice risiede come il delegato della vista tabella (che dovrebbe essere impostato automaticamente se la classe è una sottoclasse di UITableViewController)? Hai punti di vista nella cella che potrebbero intercettare i tocchi? – rdelmar
Sì, l'ho impostato come delegato. La cella ha la sua vista personalizzata, ma non sono in grado di creare un seguito dalla vista né dalle etichette. – filipebarretto
È necessario connettersi dalla cella stessa, non dalla vista del contenuto o dalle etichette. Se non riesci ad afferrare la cella dalla tela, quindi vai all'elenco delle scene sulla sinistra e trascina dalla cella lì. – rdelmar