我有一个嵌套在StackView内的UILabel,我需要创建一个UIView,该UIView将在屏幕上占据与UILabel完全相同的位置,然后隐藏UILabel(这是UILabel的重要部分一个应用程序,因此,如果它是免费版本,则需要用锁定图标替换数据)。我下面的代码创建了视图,但是它的位置离标签所在位置的右下角很远。我该如何完成我想做的事情?
let testView = UIView()
testView.frame = CGRect(x: hrrLabel.frame.origin.x, y: hrrLabel.frame.origin.y, width: hrrLabel.frame.width, height: hrrLabel.frame.height)
testView.backgroundColor = UIColor.red
hrrLabel.isHidden = true
hrrLabel.addSubview(testView)
您可以尝试将UIView添加到标签superView中,然后它不会被hrrLabel隐藏。
if let superview = hrrLabel.superView { superview.addSubView(testView) }
如果静止定位有问题,请尝试将该位置隐蔽到正确的参考视图。
https://developer.apple.com/documentation/uikit/uiview/1622498-convert