У меня есть два класса, которые я хочу использовать в своем новом классе. Первый реализует салфетки, чтобы удалить и второй дает длинный пресс жест:Способ наследования от нескольких классов
class DeleteItem: UITableViewCell {
}
class OpenDetail: UITableViewCell {
}
Поскольку Swift не позволяет классу наследовать от нескольких классов в следующем примере, очевидно, не будет работать:
class ItemViewCell: DeleteItem, OpenDetail {
}
Так что для того, чтобы создать ItemViewCell
и иметь оба варианта, я должен иметь один из классов наследовать друг от друга:
class DeleteItem: UITableViewCell {
}
class OpenDetail: DeleteItem {
}
class ItemViewCell: OpenDetail {
}
проблема заключается в том, если мне нужен только длинный жест нажатия, мне придется создать новый класс без наследования с DeleteItem
. Есть ли лучший способ сделать это?
[Да] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Extensions.html). – SmokeDispenser
@JanGreve: Не возражаете ли вы показать мне пример того, как достичь этого, используя расширения? В моем проекте это дает мне ошибку. – Laap
Не можете ли вы сделать 'DeleteItem' и' OpenDetail' протоколы, а не классы? –