Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 带有tableview和uilabel的xcode swift约束问题_Ios_Swift_Xcode_Uitableview_Constraints - Fatal编程技术网

Ios 带有tableview和uilabel的xcode swift约束问题

Ios 带有tableview和uilabel的xcode swift约束问题,ios,swift,xcode,uitableview,constraints,Ios,Swift,Xcode,Uitableview,Constraints,我已经在早些时候发布了这篇文章,但无法得到关于如何解决我的问题的答案,所以我正在再次尝试。希望有比我更了解约束条件的人能帮上忙 简单地说,我有一个带有UITableView的UIViewController。其中一个单元格包含到的标签。我试图弄清楚当文本被包装时,如何调整第二个UILabel的大小 以下是截图: 我已经尝试过了,而且有人向我解释过,在LabelBio上有四个约束条件 导致superview-我尝试了边距和superview 跟踪到superview 拉贝尔斯林福酒店 高度>=

我已经在早些时候发布了这篇文章,但无法得到关于如何解决我的问题的答案,所以我正在再次尝试。希望有比我更了解约束条件的人能帮上忙

简单地说,我有一个带有UITableView的UIViewController。其中一个单元格包含到的标签。我试图弄清楚当文本被包装时,如何调整第二个UILabel的大小

以下是截图:

我已经尝试过了,而且有人向我解释过,在LabelBio上有四个约束条件

  • 导致superview-我尝试了边距和superview
  • 跟踪到superview
  • 拉贝尔斯林福酒店
  • 高度>=
  • 但这些似乎并不能解决问题。我肯定我做错了什么,但我不知道我错过了什么。有人还建议在superview底部安装一个LabelBio,但效果并不理想

    随附屏幕截图,以下是我的结果:

    我不熟悉约束,也不太明白哪里出了问题。是否有人能向我阐明一个解决方案,以便我能够理解如何使这项工作。我读到的关于约束的所有内容都让我相信这应该有效,但事实并非如此

    我还尝试过为Rowat定义方法Heights和取消UITableViewAutomaticDimension,并尝试过设置。rowHeight=UITableViewAutomaticDimension

    如果需要更多信息来帮助我解决问题,请告诉我

    我的另一个帖子是:


    谢谢你的帮助

    你已经完成了大部分工作

    将Labelbio的底部约束添加到contentView应该足以使contentView计算其高度

    你已经完成了大部分工作

    将Labelbio的底部约束添加到contentView应该足以使contentView计算其高度

    让我们将其分为三个问题:

  • 制作
    ui标签
    垂直展开以容纳任意文本
  • 使
    TableViewCell
    子类垂直展开以容纳任意内容
  • 使两者协同工作
  • 使
    UILabel
    垂直展开以容纳任意文本 定义
    ui标签时,请确保执行以下操作:

    label.numberOfLines = 0
    label.lineBreakMode = .byWordWrapping
    
    这将告诉您的标签不要使用明确提供的行数,并在单词边界处自然地打断提供的文本。结合固定或最大宽度,这将为标签创建隐式的行数(从而隐式的高度)

    查看更多信息

    使
    TableViewCell
    子类垂直展开以容纳任意内容 苹果包括一个特殊的功能。重要的部分是在表视图中(而不是在表视图单元格中)设置这两个属性:

    设置这两个属性后,表视图单元格将使用自动布局来确定其高度

    使两者协同工作 您的表视图单元格现在正在查看其内容以提供隐式高度。您需要创建一个从单元顶部到底部的完整约束链,以将它们分开到正确的高度。在图像的示例中:

    • 将标签ellerInfo约束到superview上边距
    • labellerinfo
      底部约束到
      LabelBio
      顶部(加上任何边距)
    • 约束
      LabelBio
      bottom到superview底部边距

    您还应该以某种方式约束
    LabelBio
    的宽度或前缘和后缘;你在图像中显示的内容很好。综上所述,这些设置和约束将创建自动调整大小的表格视图单元格,其中包含一个基于文本更改高度的
    LabelBio

    让我们将其分为三个问题:

  • 制作
    ui标签
    垂直展开以容纳任意文本
  • 使
    TableViewCell
    子类垂直展开以容纳任意内容
  • 使两者协同工作
  • 使
    UILabel
    垂直展开以容纳任意文本 定义
    ui标签时,请确保执行以下操作:

    label.numberOfLines = 0
    label.lineBreakMode = .byWordWrapping
    
    这将告诉您的标签不要使用明确提供的行数,并在单词边界处自然地打断提供的文本。结合固定或最大宽度,这将为标签创建隐式的行数(从而隐式的高度)

    查看更多信息

    使
    TableViewCell
    子类垂直展开以容纳任意内容 苹果包括一个特殊的功能。重要的部分是在表视图中(而不是在表视图单元格中)设置这两个属性:

    设置这两个属性后,表视图单元格将使用自动布局来确定其高度

    使两者协同工作 您的表视图单元格现在正在查看其内容以提供隐式高度。您需要创建一个从单元顶部到底部的完整约束链,以将它们分开到正确的高度。在图像的示例中:

    • 将标签ellerInfo约束到superview上边距
    • labellerinfo
      底部约束到
      LabelBio
      顶部(加上任何边距)
    • 约束
      LabelBio
      bottom到superview底部边距

    您还应该以某种方式约束
    LabelBio
    的宽度或前缘和后缘;你在图像中显示的内容很好。综上所述,这些设置和约束将创建自动调整大小的表格视图单元格,其中包含一个基于文本更改高度的
    LabelBio

    检查下面的答案,我还认为LabelBio缺少superview的底部约束,并确保您也使用了estimatedRowHeight…检查我的示例项目:。约束是以单元格基于UITextView input.OMG展开的方式设置的,谢谢