Sto usando due UITableView
s in un UIViewController
, come posso popolare la riga e le celle in entrambe le visualizzazioni di tabella? Quando fornisco la seconda vista tabella, si dice la dichiarazione duplicata del numero di righe nella sezione ecc.come utilizzare più di due UITableView in controller a vista singola in iphone
risposta
Ecco perché i metodi dataSource/delegate hanno un parametro tableView
. A seconda del suo valore, è possibile restituire diversi numeri/celle/...
- (void)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView == _myTableViewOutlet1)
return 10;
else
return 20;
}
Tutte le vostre UITableViewDelegate
e UITableViewDatasource
metodi saranno attuati solo una volta. Hai solo bisogno di verificare per quale vista tabella viene chiamato il metodo.
if (tableView == tblView1) {
//Implementation for first tableView
}
else {
//Implementation for second tableView
}
questo sarà il lavoro in tutte le delegato e origine dati i metodi di tableView come tableView
è parametro comune a tutti i metodi
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {}
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {}
This Link ha anche la soluzione del vostro problema.
Spero che questo aiuti
Si prega di dare un'occhiata.
Prima creare due tableview nel generatore di interfacce e quindi connettersi con due variabili IBOutlet e impostare delegate e origine dati per entrambe le tabelle.
In interfaccia del file
-IBOutlet UITableView *tableView1;
-IBOutlet UITableView *tableView2;
Nel file di implementazione
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
if (tableView==tableView1)
{
return 1;
}
else
{
return 2;
}
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView==tableView1)
{
return 3;
}
else
{
if (section==0)
{
return 2;
}
else
{
return 3;
}
}
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (tableView==tableView1)
{
//cell for first table
}
else
{
//cell for second table
}
return cell;
}
Usa questo codice. speranza aiuta
E 'possibile, guardare il codice di riferimento qui: http://github.com/vikingosegundo/my-programming-examples
prega di fare riferimento anche questa pagina: 2 tableview on a single view
- 1. Come utilizzare uno xib con più controller di vista?
- 2. Posso utilizzare una singola cella prototipo in più TableViews?
- 3. iPhone Colonne multiple in UITableView
- 4. Due UITableView nella stessa vista
- 5. Due controller diversi possono accedere a una singola vista in mvc?
- 6. Utilizzo di più file pennino con un controller a vista singola?
- 7. come aggiungere due controller di vista in UIPageViewcontroller
- 8. Fabbrica singola per più controller?
- 9. funzionalità simili come uitableview in iphone a in Android?
- 10. Utilizzo di più controller in una vista in Rails
- 11. Come utilizzare più lingue in una vista in CodeIgniter?
- 12. CakePHP: come utilizzare controller :: referer() in una vista
- 13. Widget Javascript ispirato a UITableView per iPhone?
- 14. Utilizzare gli helper di vista nei controller in Zend Framework
- 15. Più messaggi APN per iPhone, connessione singola
- 16. Come utilizzare SecureSocial in un'applicazione a pagina singola
- 17. Albero a più livelli UITableView in iOS
- 18. Come passare due modelli a una vista
- 19. Come utilizzare la vista di scorrimento su iPhone?
- 20. Come utilizzare un controller per due direttive?
- 21. come utilizzare due AntiForgeryToken in una singola pagina senza utilizzare la proprietà
- 22. iPhone: Come utilizzare UITableViewCell in due visualizzazioni tabella
- 23. Due tavoli su una vista in rapida
- 24. Visualizzazione vista controller in modalità modale vista controller
- 25. Come creare una vista simile a Impostazioni iPhone
- 26. MVC: devo utilizzare Controller nella vista?
- 27. Utilizzare la visualizzazione personalizzata con più controller in Phoenix
- 28. Come animare la vista dell'intestazione di UITableView
- 29. Rotazione del controller della vista divisa su iPhone 6 Plus
- 30. Come aggiungere controller multipli in una singola pagina in AngularJS
e poi come dato valori di testo delle cellule e didSelect metodo fila – user1567956
Tutte origine dati/metodi delegato avere un parametro 'tableView'. Non solo 'numberOfRowsInSection', ma anche' cellForRowAtIndexPath' o 'didSelectRowAtIndexPath'. – Cyrille