【问题标题】:Changing UILabel Y position in TableViewController更改 TableViewController 中的 UILabel Y 位置
【发布时间】:2016-06-23 01:59:55
【问题描述】:

我有一个UITableViewController,我在界面生成器的表格视图下方放置了一个UILabel。但是,我似乎无法控制标签的实际 Y 位置。表格视图和标签之间存在很大差距,我想通过将标签向上移动一点来缩小。我尝试以编程方式移动标签origin.y,但它仍然在同一个位置。

有没有办法做到这一点?

【问题讨论】:

  • 应用了什么类型的 ui 样式。例如自动调整大小、自动布局
  • UITableViewController 不适合这个。 UITableViewController's self.view 是一个 UITableView,它想自己管理所有的子视图。最好只使用一个通用的UIViewController 添加一个UITableViewUILabel 到它的self.view 这是一个通用的UIView
  • @HariKrishnan.P 我相信它的自动布局。但是你不能设置任何约束。
  • @beyowulf 当您想更改电子邮件或其他设置时,lyft 应用会执行此操作。看起来像它的UITableViewController 分组样式。
  • 一种可能的方法更改为自动调整大小,然后更改并检查 y 值

标签: ios uitableview uilabel


【解决方案1】:

如果您希望它位于表格视图的底部,您可以将其添加为tableFooterView。例如:

    override func viewDidLoad() {
        super.viewDidLoad()
        let footerLabel = UILabel()
        footerLabel.text = "Some Text"
        footerLabel.textAlignment = .Center
        footerLabel.textColor = UIColor.redColor()
        footerLabel.sizeToFit()
        self.tableView.tableFooterView = footerLabel
    }

您可以使用添加到UIViewControllerUITableViewController 的表格视图。

tableFooterView 直接邻接表格视图最后一节的节页脚。

override func tableView(tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
        return 0.1 // adjust this value to determine how close the label is to the last table view cell. Don't return 0 unless you want the default value for grouped style table views
    }

【讨论】:

  • 我认为您回答的最终结果与我最初的问题相同。我假设不可能减少标签和底部单元格之间的间距。
  • 我更新了我的答案。我仍然不确定你想要什么。
  • heightForFooterInSection 完成了这项工作!
猜你喜欢
  • 2012-04-06
  • 1970-01-01
  • 2015-02-05
  • 1970-01-01
  • 2020-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多