Pregunta Cómo cambiar uitableview eliminar texto del botón


Hola, estoy intentando cambiar el texto que se muestra en el botón Eliminar cuando un usuario desliza una celda uitableview dentro de mi vista de tabla.

He visto un ejemplo en otro hilo de pregunta que dice usar este delegado de la vista de tabla

- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath

Mi pregunta es, ¿cómo uso este método? No estoy seguro de cómo usar esto.


73
2017-09-12 22:56


origen


Respuestas:


En su controlador manejando el UITableView deberías implementar el UITableviewDelegate y devuelva el título que desea para su método dentro del titleForDeleteConfirmationButtonForRowAtIndexPath método.

Ejemplo:

@interface CategoryAddViewController : UITableViewController
@end

@implementation CategoryAddViewController
// ...
-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath {
return @"Please don't delete me!";
}

@end

Te dejo con algo así:

enter image description here


191
2017-09-12 23:04



En Swift es igual, ¡solo la firma del método es diferente!

func tableView(tableView: UITableView, titleForDeleteConfirmationButtonForRowAtIndexPath indexPath: NSIndexPath) -> String? {
  return "Erase"
}

24
2017-10-14 00:04



Simplemente devuelva la cadena que desea mostrar en lugar de eliminar. Supongamos que desea mostrar "Borrar" para todas las filas, la función anterior debe contener:

return @"Erase";

Leer ESTA

También en su archivo .h, agregue UITableViewDelegate en caso de que su controlador de vista ya no sea un UITableViewController. Eso es, puede ser:

@interface SomeView : UIViewController <UITableViewDelegate>

O

@interface SomeView : UITableViewController

4
2017-09-12 23:03