Как я могу получить высоту своего пользовательского элемента управления?Получите внутреннюю высоту настраиваемого элемента управления
Идея заключается в том, что я буду использовать ее для динамического определения высоты некоторых кнопок внутри настраиваемого элемента управления. Я установил высоту Placeholder равным 44 в инспекторе размера Xcode.
Отработка Start Developing iOS Apps (Swift) учебника Apple, я пытаюсь получить доступ к frame.size.height
, и это дает значение 1000 в то время как учебник, кажется, предполагает, что это должно быть 44.
class RatingControl: UIView {
...
override public var intrinsicContentSize: CGSize {
let buttonSize = Int(frame.size.height)
print(buttonSize) // prints 1000
let width = (buttonSize * starCount) + (spacing * (starCount - 1))
return CGSize(width: width, height: buttonSize)
}
...
Любопытно, что автор Apple так обратился к «фрейму» в своем учебнике. Установка размера до 44 работает. Я просто поеду с ним. – ThisClark
Да, это своего рода хак, который раньше работал до iOS 10 ... –