Неправильный размер UITextField RightView

Проблема введите здесь описание изображения

Размер rightView не изменяется должным образом, когда UITextField помещается в ячейку UICollectionView внутри UIStackView

Код:

  func configure(cell: UICollectionViewCell) {
    guard let cell = cell as? ListTextFieldCell else {return}
    self.cell = cell
    cell.title.text = "PIN"
    let textField = cell.textField!
    textField.rightViewMode = .always
    updateButtonTitle()
    textField.rightView = revealPasswordButton
    textField.placeholder = "4 digits"
    textField.keyboardType = .numberPad
    textField.delegate = self
    updateButtonTitle()
    // No effect!
    revealPasswordButton.frame = CGRect(origin: .zero, size: CGSize(width: 100, height: 50))
  }


    // no effect WHATSOEVER
    revealPasswordButton.setTitle(buttonTitle, for: .normal)
    revealPasswordButton.setContentCompressionResistancePriority(.required, for: .horizontal)
    revealPasswordButton.setContentCompressionResistancePriority(.required, for: .vertical)
    revealPasswordButton.sizeToFit()
  }

С другой стороны, в обычном UIView тот же самый код дает правильный результат:

введите здесь описание изображения

В чем может быть причина такой проблемы


person Richard Topchii    schedule 14.08.2018    source источник
comment
Вы пытались установить цвет фона для текстового поля и увидели?   -  person iPeter    schedule 14.08.2018


Ответы (1)


Каковы ваши UIStackView настройки распространения? Также вы можете установить значение contentCompressionResistancePriority по горизонтали равным UILayoutPriorityDefaultRequired для rightView

person TunaTheDog    schedule 14.08.2018