【问题标题】:text in label bleeding off screen iOS Swift标签中的文本从屏幕上溢出iOS Swift
【发布时间】:2016-03-12 04:49:58
【问题描述】:

我在表格单元格中添加了两个标签,顶部为左对齐,底部为右对齐,但文本显示不正确。

我在情节提要中为 tableview 添加了适当的约束,但这并没有解决问题。这是我用来设置标签的代码和生成的屏幕截图,我只是将边框用于调试目的

    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath)


    var label1 = UILabel(frame: CGRectMake(0,0, cell.bounds.width, cell.bounds.height/3))
    var label2 = UILabel(frame: CGRectMake(0,cell.bounds.height/3, cell.bounds.width, cell.bounds.height/3 * 2))



    label1.textAlignment = .Left
    label1.text = "AAAA"
    label1.layer.borderColor = UIColor.blackColor().CGColor
    label1.layer.borderWidth = 1.0


    label2.textAlignment = .Right
    label2.text = "BBBB"
    label2.layer.borderColor = UIColor.redColor().CGColor
    label2.layer.borderWidth = 1.0


    cell.addSubview(label1)
    cell.addSubview(label2)

编辑:添加新图片以显示约束

【问题讨论】:

  • 请发布您的限制条件
  • 添加新图片以发布@EICaptain

标签: swift autolayout uilabel constraints tableviewcell


【解决方案1】:

在固定所有边缘时删除constraints to margin ..

有关边距限制的更多指南,请查看link

【讨论】:

  • 完美!谢谢!文本从边缘开始 - 您是否碰巧有关于如何添加一些填充的快速提示?
  • 如果可能的话,在单元格中添加标签并添加约束..这只是一个建议
【解决方案2】:

您对cell 本身没有任何限制。我建议您继承UITableViewCell,将两个标签添加到自定义单元格,设置约束,然后在tableView.dequeueReusableCellWithIdentifier 中修改这些标签。然后,您将保留在情节提要中设置的约束。

由于它目前存在,每次加载单元格时您都会创建新的labels,因此您还必须以编程方式创建约束,这并不理想。

【讨论】:

  • 我希望避免这一步,看来上面的答案是有效的
  • 它会让你的代码更干净,更高效,但很高兴它正在工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-24
  • 2018-08-11
  • 1970-01-01
相关资源
最近更新 更多