Для изменения иконки перемещения ячейки в режиме редактирования TableView в Swift можно использовать метод setEditing(_, animated:)
в сочетании с методом editingAccessoryType
ячейки.
Для начала, вам нужно настроить вашу TableView для режима редактирования. Вы можете сделать это, установив свойство isEditing
на true
в инициализации вашего контроллера или путем добавления кнопки редактирования в ваш Navigation Bar и реализации соответствующего действия. Например:
override func viewDidLoad() { super.viewDidLoad() tableView.isEditing = true }
Когда режим редактирования включен, TableView позволяет перемещать ячейки. По умолчанию, ячейки имеют иконку перемещения, которая представляет собой три горизонтальные линии. Однако, вы можете изменить эту иконку, присвоив значение свойству editingAccessoryType
ячейки.
Существует несколько встроенных значений для свойства editingAccessoryType
:
- .none
: отключает иконку перетаскивания
- .disclosureIndicator
: отображает стандартный значок указателя (>
) справа от текста ячейки
- .detailButton
: отображает значок информации (i
) справа от текста ячейки
- .checkmark
: отображает стандартный значок выбора справа от текста ячейки
Чтобы изменить иконку перемещения, вы можете использовать собственную картинку. В этом случае, вы должны создать экземпляр UIImageView и присвоить его свойству editingAccessoryView
ячейки. Например:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) // Создаем собственную картинку для отображения иконки перемещения let moveIcon = UIImageView(image: UIImage(named: "move_icon")) cell.editingAccessoryView = moveIcon return cell }
В этом примере, я создал изображение "move_icon" и установил его в качестве иконки перемещения для каждой ячейки в таблице.
Таким образом, вы можете изменить иконку перемещения ячейки в режиме редактирования TableView, используя метод setEditing(_, animated:)
и свойство editingAccessoryType
или editingAccessoryView
ячейки. Вы можете выбрать одно из встроенных значений или создать собственную картинку для иконки перемещения.