我有一个内容视图嵌入到滚动视图中。在这个内容视图中,我有一个ImageView和一个带有几个标签的stackview。当行太长时,其中两个标签应该换行。当最后一行换行时,我想让它激活滚动视图。目前,我的约束设置如下:
Scrollview -> Parent view controller = 0,0,0,0
UIView -> Scrollview = 0,0,0,0
ImageView -> UIView = Top: 20, Bottom: 45, Leading/Trailing: 80
Stackview -> Imageview = Top: 45
Stackview -> UIView = Leading: 20, Bottom: 40, Trailing: 150标签是默认的,框架拥抱文本。(我会发布一张图片。)
下图仅显示了在标签上设置约束以尝试强制换行的一次尝试-它不起作用。

下面是我得到的信息:

在底线换行之后,stackview应该向下增长并启用滚动。我需要能够滚动,但我看到的其他事情是,它只会滚动到最后一行,然后弹出视线。我还不能想出如何在行中添加足够的填充来阻止它这样做,但这是我认为的另一个问题。
我已经尝试在堆栈视图上设置宽度约束来强制标签换行。标签设置为0行,换行符设置为自动换行。我还尝试对标签设置一个较小的尾随约束,以强制其换行,但这也不起作用。
这些都是在Interface Builder中完成的,所以没有代码。我可以移动到所有的代码,如果它可以解决我的问题。只要让我知道我还需要发布什么来帮助解决这个问题。谢谢!
发布于 2019-05-12 00:27:03
1-您需要按ctrl键从滚动视图的contentView拖动到vc的主外视图,然后选择等宽
2-您需要为imageView设置高度约束
3-将stackview的分发设置为fill
https://stackoverflow.com/questions/56092165
复制相似问题