Можно создать кастомный UITableViewCell и переопределить методы для управления состоянием выделения.
Вот пример:
swift
В tableView(_:cellForRowAt:) нужно использовать этот кастомный класс:
swift
Также можно установить UITableViewCell.selectionStyle в .none:
swift