Как добавить пользовательскую кнопку на UITableViewCell
, а затем удалить ячейку с помощью этой кнопки без использования Interface Builder и Custom Cell?Как добавить кнопку без использования пользовательской ячейки в UITableView?
ответ
Если вы действительно хотите добавить пользовательскую кнопку без подклассов, просто добавьте кнопку к contentView клетки:
[cell.contentView addSubview:customButton];
Вы можете установить все характеристики кнопки: рамки, цели, селектор, и т. д. Затем Ad использовал вышеупомянутый вызов, чтобы добавить его в ячейку.
UIButton *customButton = [UIButton buttonWithType:UIButtonTypeCustom];
customButton.frame=//whatever
[customButton setImage:anImage forState:UIControlStateNormal];
[customButton setImage:anotherImage forState:UIControlStateHighlighted];
[customButton addTarget:self action:@selector(delete) forControlEvents: UIControlEventTouchUpInside];
//yadda, yadda, .....
Вы можете пометить его как хорошо
customButton.tag = 99999;
Таким образом, вы можете найти его позже:
UIButton *abutton = (UIButton*) [cell.contentView viewWithTag:99999];
Вам нужно будет решить, когда, чтобы добавить кнопку, может быть, по выбору клетки, возможно, в режиме редактирования ... просто поместите код в метод делегата по вашему выбору.
Если единственная цель кнопки состоит в том, чтобы предложить удаление, вы должны изучить UITableViewDataSource
, у которого есть метод под названием - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
. Реализовать его следующим образом:
- (BOOL)tableView:(UITableView *)tableView
canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
А затем реализовать:
- (void)tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
{
// Database removal code goes here...
}
Чтобы использовать эти методы, пусть ваш UITableViewController
реализовать протокол UITableViewDataSource
делать что-то вроде:
MyClass : UITableViewController <UITableViewDataSource>
в вашем заголовке файл, и обязательно запомните, чтобы установить источник данных viewController в self
.
- 1. показать кнопку раскрытия детали на uitableview без пользовательской ячейки
- 2. Добавить строку в UITableView без использования reloadData
- 3. Как использовать статические ячейки в UITableView без использования раскадровки?
- 4. подклассификация ячейки uitableview без использования uitableviewcontroller
- 5. изменение ширины пользовательской ячейки UItableview
- 6. Как добавить кнопку Round rect вне ячейки в UITableView?
- 7. Автоматическая высота ячейки без пользовательской ячейки?
- 8. Вращение пользовательской ячейки в uitableview скрывает данные
- 9. Доступ к свойствам пользовательской ячейки UITableView
- 10. Динамическая высота пользовательской ячейки в UITableView
- 11. Как добавить кнопку в каждую ячейку uitableview?
- 12. UITapGestureRecognizer для пользовательской ячейки в UITableView
- 13. Добавить кнопку в заголовок без использования XAML
- 14. UITableView - добавить ячейки
- 15. Как добавить UItableview без раскадровки? (Ошибка UITableView)
- 16. Каков способ удаления пользовательской ячейки из UITableView?
- 17. Задержка при обновлении пользовательской ячейки UITableView
- 18. Как обновить uitableview без использования таймера в swift
- 19. Добавьте кнопку push на кнопку внутри пользовательской ячейки таблицы.
- 20. Как добавить новые ячейки в фиксированный UITableView?
- 21. Добавить две ячейки в пользовательской функции без параметров
- 22. Как программно добавить кнопку в строку UITableView?
- 23. Редактирование UITableView - выбор ячейки без подсветки ячейки
- 24. Подробный просмотр без использования UITableView?
- 25. Добавить пользовательскую ячейку внутри пользовательской ячейки
- 26. Нет достаточной ячейки для использования в UITableView
- 27. Ячейки UITableView с кнопками
- 28. Как добавить изображение на ячейки UITableView?
- 29. Как добавить KASlideShow внутри ячейки внутри UITableView
- 30. Как получить кнопку из ячейки в UITableView в iOS?
Что касается кнопки, я хочу делать все это, когда я нажимаю на пользовательскую кнопку, и кнопка должна быть создана без использования конструктора интерфейса и пользовательской ячейки. –
метод canEditRowAtIndexPath автоматически добавит кнопку удаления в каждую строку в режиме редактирования. Попробуйте :) – tmadsen
, но я хочу сделать это с помощью настраиваемой кнопки. –