我有一個包含UIImageView
和UILabel
容器UIView
,如下:將子視圖設置爲非「可變形」?
let containerView = UIView()
containerView.clipToBounds = true
let imageView = UIImageView(frame: containerView.bounds)
imageView.image = UIImage(named: "Some Image")
containerView.addSubview(imageView)
let labelView = UILabel(frame: containerView.bounds)
labelView.text = "Some Label"
containerView.addSubview(label)
我現在想舒展containerView
的x軸,但保持標籤轉化的,即只是舒展containerView
和imageView
。我現在有:
containerView.transform = CGAffineTransformMakeScale(2, 1)
但這也延伸了label
。任何使標籤「不可變形」的解決方案?
感謝您的建議。黑客的作品,但不是當我把它包含在動畫中時 - 這是一種奇怪的放大/縮小舞蹈。如何從容器中取出標籤並將其添加回來以查看該位置?我已經嘗試了'labelView.removeFromSuperview()',然後是'view.addSubview(labelView)',它添加了視圖,但轉換仍然適用於它... – Alex
你需要找到容器的容器,在那裏添加視圖('container.superview.addSubview(labelView)')。如果你使用自動佈局,你需要更新你的約束來處理它不是其他包含的元素的兄弟(這可能是棘手的)。如果你手動計算佈局,你可以調整,直到你做對了。 –