UIView clipsToBounds不起作用

问题描述 投票:0回答:1

我有一个带XIB的视图控制器,里面有一个视图(contentView)。该视图包含一些按钮。

内容视图具有圆角和剪辑到边界,但它不尊重剪切矩形。我在视图控制器的clipsToBounds中设置了角半径和viewDidLoad

在这里,您可以看到显示视图以正确方式组合的显示屏幕截图,但在模拟器和设备上,剪裁边界不受尊重。

有人可以帮我理解发生了什么。

该应用程序针对iOS 10和11,两者都有相同的问题。

enter image description here

enter image description here

enter image description here

ios iphone swift uiview
1个回答
0
投票

我找到了一个解决方案,我在viewDidLayoutSubviews中移动clipsToBound而不是viewDidLoad,现在可以工作了

override func viewDidLoad() {
    super.viewDidLoad()

    contentView.layer.cornerRadius = Dimensions.CornerRaius
    contentView.dropShadow()
}

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()

    contentView.clipsToBounds = true
}
© www.soinside.com 2019 - 2024. All rights reserved.