我正在尝试在 tableview Controller 上创建一个粘性 uilabel。但不幸的是,它随着 tableview 移动。
func showinvisible() {
var uzak = CGFloat()
if UIDevice().userInterfaceIdiom == .phone {
switch UIScreen.main.nativeBounds.height {
case 1136:
uzak = 120
case 1334:
uzak = 120
case 1920, 2208:
uzak = 120
case 2436:
uzak = 250
default:
print("unknown")
}
}
let screenSize: CGRect = UIScreen.main.bounds
self.dynamicLabel.frame = CGRect(x:0, y:screenSize.height - uzak, width:screenSize.width, height:80)
self.dynamicLabel.backgroundColor = UIColor.orange
self.dynamicLabel.textColor = UIColor.white
self.dynamicLabel.textAlignment = NSTextAlignment.center
self.dynamicLabel.text = NSLocalizedString("You are currenly invisible", comment: "")
self.dynamicLabel.font = self.dynamicLabel.font.withSize(12)
self.view.addSubview(self.dynamicLabel)
self.view.bringSubview(toFront: self.dynamicLabel)
}
我需要它停留在屏幕底部。有什么想法吗?
最佳答案
一个很好的方法是使用容器 View Controller 。有一个常规的 UIViewController
将您的标签作为 subview ,并将 UITableViewController
作为 subview Controller 。
这具有分解大型 View Controller 的额外好处。例如,您可以在父级中具有获取数据的逻辑,而只让子级处理演示。
这很容易在 Storyboard中配置......
关于ios - tableview Controller 上的粘性 UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51440288/