#swift
#swift
Вопрос:
Для создания контекста в моем приложении есть стопка карточек (похожих на Tinder), которые переворачиваются, и каждая может содержать много текста с одной стороны, для прокрутки которого требуется UITextView. По сути, это приложение для флэш-карт, поэтому, как только пользователь закончит просматривать карточку, он уберет ее, чтобы просмотреть следующую.
Я пытаюсь сделать так, чтобы пользователь мог нажать в любом месте карты, чтобы перевернуть ее, поэтому я добавил кнопку очистить, которая заполняет карту. Моя проблема в том, что когда кнопка находится спереди, она блокирует прокрутку текстового представления, а когда кнопка находится сзади, текстовое представление блокирует ее нажатие.
Есть ли способ как-то обойти это, чтобы обеспечить обе функции?
Комментарии:
1. Возможно, вы могли бы создать
UITapGestureRecognizer
.
Ответ №1:
Вы можете создать UITapGestureRecognizer
, вот так:
let gesture = UITapGestureRecognizer(target: self, action: #selector(tap(gesture:)))
addGestureRecognizer(gesture)
И функция для запуска:
@objc func tap(gesture: UITapGestureRecognizer) {
print("Tap!")
}
Комментарии:
1. @ericathanas Нет проблем! 😁
Ответ №2:
Может быть, вы можете добавить UITapGestureRecognizer
к самому текстовому виду. Что-то вроде:
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(ViewController.didTap(_:)))
textView.addGestureRecognizer(tapGesture)
@objc func didTap(_ gesture: UITapGestureRecognizer) {
// Handle the tap
}
Ответ №3:
вы пробовали TableView или CollectionView, вы можете настроить свою ячейку так, чтобы она выглядела как карточка, тогда, когда пользователь нажимает на ячейку, она переворачивается или представляет всплывающее окно, это проще.
Комментарии:
1. Я не уверен, что в этом случае будут использоваться TableView или CollectionView. Я обновил свое описание, надеюсь, оно станет более понятным, но дайте мне знать, если это все еще не так!