ios - tableview Controller 上的粘性 UILabel

标签 ios swift uitableview

我正在尝试在 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中配置......

enter image description here

enter image description here

关于ios - tableview Controller 上的粘性 UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51440288/

相关文章:

ios - 从 Swift 调用存储在 NSDictionary 中的 Objective-C block

swift - 解释 Swift Closure 语法

ios - 存储的数据在 TableView 中无法显示,在核心数据的一对多关系中?

ios - EKEvent 编辑不起作用

ios - 编辑 tableView,其中行是不可变值

ios - 处理多个 UISlider

ios - Google 自动完成组件限制 iOS

iphone - insertRowsAtIndexPaths 为每一行调用 cellForRowAtIndexPath

c# - iOS UI 的 MVVM 交叉图片选择器插件不会在 Bytes 类型 View 模型属性上使用 InMemoryImage 进行更新

ios - 为什么 UIControlState 是结构而不是枚举?