2012-02-26 20 views
5

Tengo el siguiente problema.Deslizar para eliminar no funciona mientras está en modo de edición

Tengo una aplicación que utiliza una UITableView con una UITableViewCell personalizada. Debido a las especificaciones de la aplicación, necesito que sea en el modo de edición siempre, por lo que en la viewDidLoad escribí esto:

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

    [super viewDidLoad];  
} 

Además, he aplicado los métodos siguientes:

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

Y varias más, pero el problema persiste y cuando deslizo una celda, el botón Eliminar no aparece. Cualquier apuntador sería muy apreciado.

+0

si bien puedo manejar las críticas bien, creo que la devolución de una pregunta que ha tomado un tiempo para preguntar, y que he investigado un poco al respecto sin decir por qué es simplemente cruel. –

+0

Subió de nuevo a cero (no lo hice). Pero no te preocupes por las críticas de extraños. No es una mala pregunta si no eres un profesional. – QED

+0

gracias psoft! De hecho, creo que la crítica es algo bueno, ¡pero solo cuando está debidamente justificado! Gracias por la ayuda –

Respuesta

9

- (UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath debe devolver UITableViewCellEditingStyleDelete por cada fila que desea eliminar. Swipe-to-delete está deshabilitado a favor de este método cuando está en modo de edición.

+0

No sabía eso, gracias por el aviso, creo que tendrá que ir con la idea de Ell –

+0

Sí, creo que esa es la única manera. Creo que podrías implementar el gesto de barrido en la celda real ... ¡dinos qué funciona para ti! – QED

+2

Tenga en cuenta, sin embargo, que la implementación de deslizar para borrar en el modo de edición es un poco contradictorio con los estándares de Apple y, si esa contradicción es evidente en la interfaz de usuario, su aplicación podría ser rechazada. ¡Háganos saber lo que funciona para usted! – QED

1

No creo que haya nada para que el deslizamiento estándar para eliminar funcione mientras la vista de tabla está en modo de edición, tendría que responder a los gestos y agregar su propio botón de eliminar.

Cuestiones relacionadas