【问题标题】:Autosize UILabel height with UIImageView Interface Builder MonoTouch使用 UIImageView Interface Builder MonoTouch 自动调整 UILabel 高度
【发布时间】:2012-12-31 14:09:14
【问题描述】:

我来自 Android 背景,我会使用 height = wrap_content 来解决我的问题。我在此标签下方有一个UILabelUIImageView 作为底部的边框。但是,我不确定标签的文本长度以及标签变大时会出现问题。我试过设置

Label.Lines = 0;
Label.LineBreakMode = UILineBreakMode.WordWrap;
Label.SizeToFit();

如果Label 增长超过一行但它会与下面的图像重叠,则会将其包裹起来。

所以我的问题是,如何使标签高度依赖于文本并在其下方显示所有内容?我查看了许多 SO Q&A,他们在 Interface Builder 中评论了 AutoLayoutConstraints,有人说您必须计算标签的高度并在代码中向下推其他所有内容?但是他们都不清楚实现这一点的步骤(尤其是在 MonoTouch 中)

此外,此内容位于 ScrollView 中,所以我假设我必须计算页面上的每个标签高度才能设置滚动视图的内容大小?

【问题讨论】:

    标签: xamarin.ios uiimageview interface-builder uilabel autolayout


    【解决方案1】:

    你只需要给标签和图片添加一个底部约束,这样标签展开时底部边距保持不变,图片视图被下推。

    要添加约束,您需要在情节提要中选择要添加约束的视图,并在右侧选择添加新约束下的红线,如图所示。

    如果在您的情况下滚动视图仅包含一个标签和一个图像视图,您可以尝试为标签和图像添加左、右、上和下边距,滚动视图会自动调整内容大小。

    但请确保滚动视图高度不大于屏幕高度。 IE;您需要将左、右、上、下边距设置为零。

    总结一下:

    1. 打开故事板文件。
    2. 为滚动视图添加左右上下边距为 0。
    3. 将左右上下边距添加到合适的标签值。
    4. 将左右上下边距添加到适合图像视图的值。

    【讨论】:

      猜你喜欢
      • 2020-06-06
      • 1970-01-01
      • 1970-01-01
      • 2014-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-19
      相关资源
      最近更新 更多