Ответ 1
UIStackView
просто управляет положением и размером своих разрешенных видов, cornerRadius не влияет. Попробуйте добавить пользовательский вид ниже stackView и установите для него cornerRadius.
Я обновляю свое приложение, чтобы использовать UIStackViews, теперь большинство людей должны обновиться до iOS 9.
В старой версии я сделал UIView, состоящий из двух UITextFields и установил его свойство layer.cornerRadius.
В новой версии я создал UIStackView, состоящий из тех же двух UITextFields, а не UIView. Когда я пытаюсь установить свойство layer.cornerRadius, похоже, ничего не происходит. В документации нет никакой полезной/релевантной информации.
UIStackView
просто управляет положением и размером своих разрешенных видов, cornerRadius не влияет. Попробуйте добавить пользовательский вид ниже stackView и установите для него cornerRadius.
добавьте cornerRadius в суперпредставление стека и включите свойство clipsToBounds суперпредставления, чтобы подпредставления были ограничены рамками суперпредставления.
Вы можете использовать расширение как это:
extension UIStackView {
func customize(backgroundColor: UIColor = .clear, radiusSize: CGFloat = 0) {
let subView = UIView(frame: bounds)
subView.backgroundColor = backgroundColor
subView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
insertSubview(subView, at: 0)
subView.layer.cornerRadius = radiusSize
subView.layer.masksToBounds = true
subView.clipsToBounds = true
}
}