Sunday 29 October 2017

Uitableviewcell Divulgazione , Indicatore Di Forex


Hai ogni stato frustrato con la piccola area tocco circolare durante l'impostazione del tipo di accessorio di un UITableViewCell per essere UITableViewCellAccessoryDisclosureIndicator Se non avete le dita dei bambini, it8217s molto difficile da selezionare in modo coerente. Here8217s un modo per migliorare l'esperienza degli utenti e creare lo stesso effetto di un touch pad più grande come si vede l'applicazione YouTube. Per fare questo, è necessario implementare una cella di vista tabella personalizzata. È possibile creare la propria sottoclasse, oppure è possibile aggiungere subviews al ContextView cell8217s. Questo esempio mostra come fare il secondo. Quando si imposta miei UITableViewCells Mi piace creare metodi che forniscono gli elementi che desidero utilizzare per aggiungere alla contentView cell8217s. Ecco, io creo un UIButton di tipo UIButtonTypeDetailDisclosure da aggiungere ad ogni cella della tabella. Il pulsante possiede una superficie di 44 x 44 pixel e occupa il diritto più zona della cella di vista della tabella che sarà larga 320 pixel e alto 44 pixel. Si noti qui che si definisce un obiettivo e l'azione del proprio, piuttosto che utilizzare i callback per il tipo di accessorio definito nel protocollo UITableViewDelegate. Quanto segue mostra come aggiungere il pulsante alla cella nel metodo cellForRowAtIndexPath nella tabella classe di visualizzazione del controller. Quando si aggiungono subviews al contentView, essere sicuro che la spia dettagliata informativa è resa sulla parte superiore. Inoltre, assicurarsi che si sta gestendo correttamente il riutilizzo delle vostre cellule. Infine per elaborare l'evento di selezione è necessario il codice seguente: 7 Responses to 8220Larger tocco Area di Particolare Disclosure Indicator8221 Grazie per il codice. I8217m avendo qualche difficoltà quando il pulsante è effettivamente presentata. I8217m aggiungendo la vista pulsante per dopo I8217ve sottoclasse un UITableViewCell con più etichette. Il pulsante viene visualizzato bene, ma I8217m in grado di restituire il IndexPath per quella cella selezionata. I8217m utilizzando l'esempio SeismicXML per costruire la mia UITableView. Il codice all'interno del 8211 (void) detailDiscolosureIndicatorSelected: (UIButton) mittente doesn8217t mi permette di afferrare qualsiasi dei dati associati con il mio cellulare. Eventuali suggerimenti I8217m davvero bisogno di ottenere un UIButton aggiunto a un UITableViewCell per rispondere alle proprie azioni. Grazie per il modo inchiesta Uno per andare è di memorizzare il numero di riga nella attributo di tag del pulsante quando si costruisce la cellula. In questo modo you8217ll hanno questo dati nell'oggetto mittente. Questo approccio diventa meno utile (o più complicato) se la visualizzazione della tabella possiede più di una sezione. I8217m sicuro che ci sono approcci più eleganti. Usando il codice seguente dovrebbe funzionare anche, ma la sperimentazione di questa mattina mi ha mostrato che non restituisce i dati corretti, almeno per la mia realizzazione. NSIndexPath indexPath tableView indexPathForSelectedRow Resta postato su come va Grazie per questo suggerimento. Ho usato la proprietà tag del pulsante per archiviare l'indice cella quando ho creato il pulsante e sono stato in grado di usarlo per attivare un'azione basata sulla cellula button8217s anche se il pulsante non è legato alla cella. Hai visto il codice di esempio di accessori alla SDK. Il IndexPath è ottenuto attraverso il punto di contatto presso la vista. CGPoint currentTouchPosition toccare locationInView: self. tableView NSIndexPath indexPath self. tableView indexPathForRowAtPoint: currentTouchPosition I8217m cercando di utilizzare la proprietà tag come you8217ve cui sopra, ma can8217t farlo funzionare. Ti dispiacerebbe inviare il codice di come fare questo Dopo aver impostato il valore della variabile button8217s quando creo il tasto, I8217ve provato ad utilizzare sender. tag per recuperare il valore quando viene premuto il pulsante, ma il mio codice won8217t compilazione. Ho appena ottenere un 8216request per membro non una struttura o un errore union8217. Ogni codice di esempio sarebbe apprezzato. a Gary Prima typecast il mittente di Pulsante UIButton tagbutton. tag albertofloyd (UIButton) mittente int, vi ringrazio molto per la vostra menzionare ad esempio accessori. Risolve esattamente tutti i problemi connessi con le azioni indexPath e UIButton. Lascia un ReplyWhen una cella in un UITableView porta ad una visualizzazione secondaria, può essere utile avere qualche contesto visivo aggiunto. Un indicatore di comunicazione in un UITableViewCell è un piccolo chevron visualizzata sul bordo destro per indicare visivamente che conduce da qualche parte. Per esempio, dare un'occhiata alla cartella 8220History8221 in Safari Mobile Bookmarks: Nifty, proprio Here8217s come farlo: 8211 (UITableViewCell) tableView: (UITableView) tableView cellForRowAtIndexPath: (NSIndexPath) indexPath statica cella NSString CellIdentifier quotCellquot UITableViewCell tableView dequeueReusableCellWithIdentifier: CellIdentifier se (nil cellulare) delle cellule UITableViewCell alloc initWithStyle: UITableViewCellStyleDefault reuseIdentifier: CellIdentifier autorelease Tenete a mente che un indicatore di divulgazione solo per contesto visivo che doesn8217t in realtà fare nulla. Si devono ancora implementare la visualizzazione secondaria che si desidera visualizzare.

No comments:

Post a Comment