Ho creato un UITableView
e vorrei che uno specifico UITableViewCell
appaia selezionato (blu) quando viene caricata la vista.Come si seleziona un UITableViewCell per impostazione predefinita?
risposta
utilizzare il metodo UITableViewCell
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
Info here.
Forse il metodo seguente si adatta meglio? http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITableViewCell_Class/Reference/Reference.html#//apple_ref/occ/instm/UITableViewCell/setHighlighted:animated: –
quale metodo? il collegamento non va a nessun particolare metodo – Daniel
O se lo enunci, quello lo evidenzia e non lo seleziona, immagino che questo sia tutto ciò che il richiedente vuole quindi è più adatto. – Daniel
Essere prudenti con questo metodo, in quanto la selezione della riga in questo modo è qualcosa che Apple suggests against esegue per mostrare uno stato "scelto".
Invece, considerare l'impostazione della proprietà accessoryType
della cella su qualcosa come UITableViewCellAccessoryCheckmark
.
Sto cercando di replicare l'interfaccia utente di Apple quando aggiungo/modifica un evento nell'applicazione Calendario e imposta una data/ora di inizio e fine. Ho visto commenti sulla regola del segno di spunta altrove, ma sono incerto se si applicherebbe in questo caso (la tabella è usata per i componenti del layout piuttosto che presentare un elenco di dati). – user119857
Questo è un punto interessante.In questo caso, non è necessario avere una sottoview per ciascuno degli Starts and Ends poiché entrambi rappresentano lo stesso tipo di dati, modificati dallo stesso tipo di UIPickerView. Questo rappresenterebbe un uso giudizioso. È probabile che utilizzino selectRowAtIndexPath di UITableView: animated: scrollPosition: method ... si veda http://tinyurl.com/yd9zs65 –
Sicuramente attenzione. Sono sicuro che hai una buona ragione, ma guarda attentamente il documento sulle linee guida dell'interfaccia umana fornito da Apple. Le app vengono rifiutate per non deselezionare le righe della tabella. Ti inviterei a trovare la sezione appropriata di HIG e vedere Apple offre suggerimenti.
-(void)viewWillAppear:(BOOL)animated {
// assuming you had the table view wired to IBOutlet myTableView
// and that you wanted to select the first item in the first section
[myTableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]
animated:NO
scrollPosition:UITableViewScrollPositionTop];
}
sto usando questa tecnica per selezionare una delle due UITableViewCells
così gli utenti sa quale cella un UIDatePicker
sotto la tabella vista effettuerà. Questa tecnica viene utilizzata da Apple nell'app del calendario quando si crea un nuovo evento e si impostano le date.
1. questo non funziona per me. 2. Apple afferma che è necessario utilizzare il segno di spunta per indicare lo stato di selezione di un articolo. –
È necessario inserirlo in viewWillAppear
.
[myTableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]
animated:NO
scrollPosition:0];
Se si tenta di selezionarlo in cellForRowAtIndexPath:
, allora non ci vorrà lo stile richiesto.
A volte, quando non si è in uno UIViewController
, non si dispone di viewWillAppear
ea volte è stato creato il proprio UITableView
in modo programmatico.
La soluzione più semplice è quella di implementare questo metodo delegate
:
- (void)tableView:(UITableView *)tableView
willDisplayCell:(UITableViewCell *)cell
forRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.selectedIndex == indexPath.row) {
cell.selected = YES;
}
}
E 'non funziona nel cellForRowAtIndexPath
perché non è ancora visualizzata la cella. e il metodo setSelected
viene chiamato solo quando viene visualizzato questo.
Usa questo codice per selezionare la cella per impostazione predefinita in vista tabella, indexPath
può variare secondo il vostro bisogno
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
NSIndexPath *indexPath=[NSIndexPath indexPathForRow:0 inSection:0];
[theTableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionBottom];
}
- 1. Come cambiare il colore di UITableViewCell quando si seleziona?
- 2. Impostazione AutoEventWireup = "false" per impostazione predefinita
- 3. RadioButtonList selezionata per impostazione predefinita
- 4. DropDownListFor (...) selezionando booleano false per impostazione predefinita
- 5. UITableViewCell testo impostazione
- 6. Set @ Html.RadioButtonFor come selezionato per impostazione predefinita
- 7. Disattiva l'effetto di selezione quando si seleziona UITableViewCell
- 8. Blocco Ottimistico in Hibernate per impostazione predefinita
- 9. SVN Tortoise Commit deselezionare per impostazione predefinita
- 10. Perché DoubleBuffered è disattivato per impostazione predefinita?
- 11. System.Core.dll in 4.0 aggiunto per impostazione predefinita?
- 12. Completamento automatico mappa di google seleziona la prima voce nell'elenco per impostazione predefinita
- 13. Impostazione predefinita derby.system.home
- 14. Precaricamento delle associazioni Ecto per impostazione predefinita
- 15. Esiste un modo per utilizzare l'attributo JavaScript per impostazione predefinita?
- 16. Serve file statico index.html per impostazione predefinita
- 17. jQuery Calendario completo Impostazione predefinita Impostazione
- 18. Vagrant non protetto per impostazione predefinita?
- 19. Impostazione predefinita per valori hash non definiti
- 20. Come ottenere jQuery Tablesorter per ordinare decrescente per impostazione predefinita?
- 21. Parametro array, vuoto per impostazione predefinita
- 22. Come mantenere compressa la Fisarmonica UI jQuery per impostazione predefinita?
- 23. Come deselezionare la casella di spunta per impostazione predefinita sempre
- 24. Crea campo con impostazione predefinita come epoca
- 25. Qual è l'altezza predefinita di UITableViewCell?
- 26. Qual è la dimensione predefinita per UIImage in UITableViewCell?
- 27. Come posso rendere git-pull dettagliato per impostazione predefinita?
- 28. impostazione predefinita del compilatore maven
- 29. Impostazione della scheda predefinita quando si utilizzano gli storyboard
- 30. Contrassegna node_modules come escluso per impostazione predefinita in webstorm 10
Vedere questa domanda: http://stackoverflow.com/questions/19295297/uitableviewcell- set-selected-initial/25128427 # 25128427 –