Я хочу иметь UIButton / UISegmentedControl внутри UIView, который находится внутри UICollectionViewCell, но анимирует вне ячейки - PullRequest
0 голосов
/ 10 апреля 2019
  1. У меня есть CollectionViewController с ячейкой заголовка вверху.
  2. В ячейке заголовка у меня есть UIView, который скрыт с 0 высотой / шириной в том же месте, что и кнопка для отображения с UIView.
  3. Когда вы нажимаете кнопку, UIView изменяет размер анимации, которая покрывает приблизительно половину экрана.
  4. Внутри этого UIView я хочу использовать SegmentedControl в нижней части UIView (что означает, что SegmentedControlнаходится за пределами headerCell, и вместо этого segmentedControl и эта часть UIView находятся над некоторыми другими ячейками.

Моя проблема с вышеизложенным состоит в том, что SegmentedControl не работает, когда находится вне headercell. Если он находится вUIView немного больше и все еще в той части, где он находится внутри ячейки заголовка, работает segmentedControl. Но как только я помещаю его, он выходит за пределы headerCell на UIView, он не работает.

Независимо от того, что я делаю, segmentedControl не переключается, и функция подключенак нему не запускается (я пробовал с «.valueschanged» и «allevents». Вот код для моего UISegmentedControl:

        lazy var mySegmentContr: UISegmentedControl = {
    let segment = UISegmentedControl(items: ["test1", "test2"])
    segment.translatesAutoresizingMaskIntoConstraints = false
    segment.tintColor = UIColor(red: 102/255, green: 102/255, blue:          255/255, alpha: 1/1)
    segment.selectedSegmentIndex = 1
    segment.addTarget(self, action:     #selector(handleMethodForSwitch),
          for: .touchUpInside)
             return segment
              }()

Я понимаю, что вместо этого мог бы поместить это в мой CollectionViewController, ноЯ определенно предпочел бы, чтобы все это было в моем CellClass.

Я пытался включить isuserinteractionenabled, а также выводить обзор на передний план, но ни одно из этих решений не работает.

Я могу представить себе проблему в том, что вынарушаешь subview-правила.Можно ли это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...