2012-02-26 7 views
5

Sto riscontrando il seguente problema.Scorri per eliminare non funziona mentre sei in modalità di modifica

Ho un'app che utilizza UITableView con UITableViewCell personalizzato. A causa delle specifiche del app, ho bisogno di essere in modalità di modifica sempre, così sul viewDidLoad ho scritto questo:

- (void)viewDidLoad 
{ 
    MainTableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"compose_background.png"]]; 
    [MainTableView setAllowsSelectionDuringEditing: TRUE]; 
    [MainTableView setEditing: TRUE]; 

    [super viewDidLoad];  
} 

Inoltre, ho implementato i seguenti metodi:

- (UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
- (BOOL) tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath 
- (void) tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 

E molti altri, ma il problema persiste e quando faccio scorrere una cella il pulsante Elimina non viene visualizzato. Qualsiasi suggerimento sarebbe molto apprezzato.

+0

mentre riesco a gestire bene le critiche, penso che sia una questione che ha richiesto un po 'di tempo e che ho fatto qualche ricerca su questo senza dire perché è semplicemente crudele. –

+0

Lo abbiamo rimesso a zero (non l'ho buttato giù). Ma non preoccuparti delle critiche degli estranei. Non è una cattiva domanda se non sei un professionista. – QED

+0

grazie psoft! In realtà penso che la critica sia una buona cosa, ma solo se correttamente giustificata! Grazie per l'aiuto –

risposta

9

- (UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath deve restituire UITableViewCellEditingStyleDelete per ogni riga che si desidera eliminare. Swipe-to-delete è disabilitato a favore di questo metodo quando si è in modalità di modifica.

+0

Non lo sapevo, grazie per il testa a testa, penso che dovrà andare con l'idea di Ell –

+0

Sì, penso che sia l'unico modo. Penso che potresti implementare il gesto di scorrimento sulla cella attuale ... facci sapere cosa funziona per te! – QED

+2

Tieni presente, tuttavia, che l'implementazione dello swipe-to-delete in modalità di modifica è un po 'una contraddizione degli standard Apple e, se tale contraddizione è evidente nell'interfaccia utente, la tua app potrebbe essere rifiutata. Facci sapere cosa funziona per te! – QED

1

Non penso ci sia comunque lo swipe standard da cancellare per funzionare mentre la vista tabella è in modalità di modifica, si dovrebbe rispondere ai gesti e aggiungere il proprio pulsante di cancellazione.

Problemi correlati