Ho una vista tabella e ho allegato alla sua tabellaHeaderView a UISegmentedControl. Come posso rendere tableHeaderView corretto in modo che io possa sempre visualizzare UISegmentedControl nella stessa posizione anche quando sto scorrendo la vista tabella?Posso rendere fissa la posizione tableHeaderView di una tabella mentre scorro?
risposta
tableView:ViewForHeaderInSection:
è la vostra opzione per raggiungere il vostro compito. Nella tabella semplice questo apparirà in qualche modo come l'app della rubrica con il nome del nome nella sezione, ma si avrà il controllo segmentato
'tableView: viewForHeaderInSection:' consentirà a UITableViewDelegate di restituire viste personalizzate per le intestazioni di sezione, ma queste visualizzazioni * scorreranno * quando il resto della tabella scorre. –
Sì, li vedo scorrere con la parte superiore delle rispettive sezioni nell'app Contatti (e rimangono solo * in alto * quando le righe di quella sezione occupano la parte superiore della vista tabella). Quindi suppongo che la domanda sia se Badescu richiede un'intestazione fissa per sezione o una singola intestazione fissa per l'intera tabella. Sulla base dei tentativi di usare un TableHeaderView, ho pensato che fosse quest'ultimo. (Naturalmente, i due sono quasi equivalenti per un tavolo con solo 1 sezione ...) –
Capisco cosa Basescu non ha bisogno di sezioni, quindi può usare questo approccio per la tabella semplice una singola sezione per intere righe nella tabella . –
Suggerirei di posizionare UISegmentedControl in una vista separata sopra UITableView piuttosto che in tableHeaderView. Si potrebbe anche voler impostare yourTable.bounces = NO;
in modo da evitare che la vista dell'intestazione rimbalzi quando si arriva in cima alla tabella.
Prima abbassare la cornice della tabella (creare spazio sopra a tableview). Quindi durante scrollViewDidscroll, correggere correttamente tableviewheader, in modo che non scorra con esso.
Ecco il riassunto di esso.
Per espandere sulla risposta di @ mskw:
È possibile utilizzare l'UITableViewController (tenere le sottigliezze come il supporto UIRefreshControl ed evitare tastiera). Devi solo incorporare la barra degli strumenti in una vista semplice e posizionarla nella tabellaHeaderView. Quindi implementare questo metodo di delega della vista di scorrimento per bloccare.
#pragma mark - UIScrollViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGRect rect = self.toolbarContainerView.frame;
rect.origin.y = MIN(0,scrollView.contentOffset.y + scrollView.contentInset.top);
self.toolbarContainerView.frame = rect;
}
Si noti che se si utilizza anche le intestazioni di sezione si dovrà inviare tali vista dietro la tableHeaderView altrimenti si galleggiare sopra il tableHeaderView.
- 1. Mantenimento di elementi SVG su una dimensione fissa mentre scale di posizione
- 2. Posizione larghezza fissa 100%
- 3. come rendere div center orizzontalmente con posizione fissa?
- 4. Filtro dati Jquery mobile Posizione fissa/Statico
- 5. Posizione fissa - Scorrimento orizzontale
- 6. La posizione fissa non funziona in Safari 7
- 7. CSS: posizione: fissa all'interno della posizione: assoluta
- 8. Mantenere la larghezza della tabella fissa
- 9. Excel: Posizione tasto fissa
- 10. Come impostare la barra di ricerca di UISearchController su una vista diversa da tableHeaderView o navigationItem.titleview?
- 11. Differenza tra posizione: appiccicosa e posizione: fissa?
- 12. Come rendere la tabella di intestazione fissa all'interno del div scorrevole?
- 13. Posizione CSS Android: fissa dopo la rotazione di un dispositivo
- 14. Posizione fissa relativa all'elemento padre
- 15. Nuovo bug di posizione fissa su iOS8
- 16. Arresto posizione fissa al piè di pagina
- 17. Calcolo della distanza tra la posizione dell'utente e una posizione fissa
- 18. Intestazione e piè di pagina con posizione fissa mentre il contenuto è scorrevole?
- 19. Posso usare la posizione: fissa verticalmente e e posiziono: assoluta orizzontalmente?
- 20. jQuery controlla se la posizione di supporto del browser: fissa
- 21. Tabella di intestazione fissa in AngularJS
- 22. flottante nav verso destra con una posizione fissa?
- 23. posizione di Chrome: fissa e transformZ bug
- 24. Tabella HTML scorrevole con intestazione fissa e colonna fissa
- 25. Posizione cromata: posizione interna fissa: rottura assoluta con iframe/video
- 26. Scorrere all'interno di una barra laterale fissa
- 27. Colonne della tabella larghezza fissa in Bootstrap
- 28. Scorri parte del contenuto nel contenitore di posizione fissa
- 29. Nascondere overflow su elementi con posizione fissa
- 30. come ridimensionare l'elemento mantenendo la posizione fissa in svg
Possibile duplicato: http://stackoverflow.com/questions/7426849/can-not-freez-the-table-header-while-scrolling-the-rows/7427117#7427117 – msgambel
Ho usato una barra degli strumenti sul viewcontroller e metti qualunque cosa lì ... in uno dei miei progetti. – user523234