gpt4 book ai didi

ios - 如何快速将 UILabel 嵌入到 UIView 中

转载 作者:搜寻专家 更新时间:2023-11-01 07:08:42 24 4
gpt4 key购买 nike

我需要在 swift 中以编程方式创建一个 UIView,该 View 应包含一个图像和一个标签。此外,我需要将该标签和 ImageView 嵌入到创建的 View 中,以便在我为 View 的约束设置动画时,标签和图像也会相对于 View 重新定位。这是我的代码 -

func banner(viewController:UIViewController){
let width = UIScreen.main.bounds.width
let dynamicView=UIView(frame: CGRect(x:0,y: -70, width:width, height:70))
let label = UILabel(frame: CGRect(x:0,y: 35, width:width, height:20))
dynamicView.backgroundColor=UIColor.green
label.center = CGPoint(x: width/2, y: 35)
label.textAlignment = .center
label.text = "I'am a test label"
UIView.animate(withDuration: 1) {
dynamicView.frame = dynamicView.frame.offsetBy( dx: 0, dy: 70 )
viewController.view.addSubview(DynamicView)
viewController.view.addSubview(label)
}

UIView.animate(withDuration: 1, delay: 3, usingSpringWithDamping: 1, initialSpringVelocity: 4, options: .curveEaseIn, animations: {
dynamicView.frame = DynamicView.frame.offsetBy( dx: 0, dy: -70 )
}, completion: nil)
}
}

我可以通过分别更改每个 View 、标签等的 x 和 y 位置来实现。但是该代码不会干净和简洁。

最佳答案

从问题中可以看出,您正在将标签作为 subview 添加到 viewController 的 View 中。由于您希望将标签嵌入到动态 View 中,请尝试将标签添加到动态 View 中,例如

UIView.animate(withDuration: 1) {
dynamicView.frame = dynamicView.frame.offsetBy( dx: 0, dy: 70 )
viewController.view.addSubview(DynamicView)
dynamicView.addSubview(label)
}

关于ios - 如何快速将 UILabel 嵌入到 UIView 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46337510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com