Come posso comunicare al mio UITableViewController
di utilizzare la sottoclasse personalizzata UITableView
per il numero tableView
anziché un normale UITableView
?Utilizzo di una sottoclasse UITableView con un UITableViewController
risposta
Impostare la proprietà UITableViewController.tableView su un'istanza della sottoclasse UITableView personalizzata.
Nel costruttore di interfaccia associare la classe Tableview con la vostra Tableview personalizzato nella vista dell'identità ispettore
Un UITableViewController è solo un UIViewController con un'istanza UITableView e la viewController impostato come delegato e DataSource per il tavolo. ViewController implementa gli stub per tali metodi delegati.
È possibile farlo da soli con un UIViewController che implementa i protocolli UITableViewDataSource e UITableViewDelegate. Quindi, nel metodo loadView (o viewDidLoad) di UIViewController, impostare dataSource dell'istanza tableView e delegare a self.
È possibile utilizzare la propria sottoclasse tabella lì.
Questo è fuorviante. Ad esempio, UITableViewController include anche l'eliminazione della tastiera. – Luke
che cosa significa evitare la tastiera? –
diciamo che lo faccio in 'initWithStyle:' dopo aver impostato 'self = [super initWithStyle: style]'. Come faccio a sapere cosa cambia '- [UITableViewController initWithStyle:]' fatto al suo 'tableView'? Potrei rovinare quelli. Vedi http://stackoverflow.com/questions/8512793/objective-c-how-to-change-the-class-of-an-object-at-runtime – ma11hew28
Imho, il posto più bello per questo è sovrascrivere 'loadView' con qualcosa come 'self.tableView = [[MyTableViewSubclass alloc] init]' o qualcosa del genere. – CloakedEddy