Как изменить текст кнопки удаления uitableview
Привет, я пытаюсь изменить текст, который отображается в кнопке удаления, когда пользователь просматривает uitableviewcell внутри моего табличного представления.
Я видел пример в другом вопросе, который говорит, чтобы использовать этот делегат tableview
- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath
Мой вопрос в том, как я могу использовать этот метод. Я не уверен, как это использовать.
Ответы
Ответ 1
В контроллере, управляющем UITableView
, вы должны реализовать UITableviewDelegate
и вернуть заголовок, который вы хотите для своего метода, внутри метода titleForDeleteConfirmationButtonForRowAtIndexPath
.
Пример:
@interface CategoryAddViewController : UITableViewController
@end
@implementation CategoryAddViewController
// ...
-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath {
return @"Please don't delete me!";
}
@end
Оставив вас с чем-то вроде этого:
Ответ 2
В Swift он равен, только сигнатура метода различна!
func tableView(tableView: UITableView, titleForDeleteConfirmationButtonForRowAtIndexPath indexPath: NSIndexPath) -> String? {
return "Erase"
}
Ответ 3
Просто верните строку, которую вы хотите отобразить, вместо удаления. Предположим, вы хотите показать "Стереть" для всех строк, указанная выше функция должна содержать:
return @"Erase";
Прочитайте ЭТО
Также в вашем .h файле добавьте UITableViewDelegate, если ваш контроллер просмотра уже не является UITableViewController. То есть это может быть:
@interface SomeView : UIViewController <UITableViewDelegate>
ИЛИ
@interface SomeView : UITableViewController