【发布时间】:2019-01-09 05:41:10
【问题描述】:
使用https://github.com/layoutBox/PinLayout
我正在尝试制作网格视图。 视图将包含任意数量的列和行。
行将根据超级视图的宽度和根据内容调整高度的大小来适应标签的内容,文本需要贴在视图的顶部,这意味着如果其中一个标签需要高度为 100 点,下一个只需要 50 点,它将在其自身下方有 50 点的空间。基本上,如果标签覆盖了整个高度,这将创建一个顶部元素而不是中心。在布局中,我使其具有 == 0 或更大的底部约束。
到目前为止,我得到的只是一个视图容器,其中所有行都位于原点 x=0 , y = 0
这些行是包含标签的视图,它们堆叠在容器视图中。
我将行放在 inview(容器/表)中,目前标签仍然使用布局约束设置(至少在我正确填充行之前)。
if let previousView = inView.subviews.last
{
inView.addSubview(rowView)
rowView.pin.below(of: previousView).horizontally().bottom().wrapContent(WrapType.vertically).width(100%)
}
else
{
inView.addSubview(rowView)
rowView.pin.all().wrapContent(WrapType.vertically).width(100%)
}
【问题讨论】: