首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于动态AutoResize的UILabel容器视图宽度

基于动态AutoResize的UILabel容器视图宽度
EN

Stack Overflow用户
提问于 2016-04-10 04:07:56
回答 1查看 563关注 0票数 0

我有3个标签与子弹点,是横向放置。我想给子弹点定制设计,所以我认为我应该使用他们作为UIImage。让我来说明一下:

代码语言:javascript
复制
o PHP  o Swift  o Java

每个标签和指定的点之间都有固定的距离。标签也将有一个固定的距离下一个标签的子弹点(如PHP的子弹点)。

最后,我想把它水平地集中到视图上。

如果我有标签的静态文本的话,上面的场景就可以了。但是,我想使用动态文本。

我想的解决方案是创建3个容器视图。所以我会:

代码语言:javascript
复制
View

   ContainerView1   ContainerView2   ContainerView3
   |------------|  |--------------| |--------------|
   |   o PHP    |  |    o Swift   | |    o C       |
   |------------|  |--------------| |--------------|

但是,对于动态/更改的文本大小,它看起来并不一致。我将使用sizeToFit使文本适合,但是容器视图已经创建了新的独立的ViewController,因此我不确定是否可以使容器视图的宽度自动调整到“符号点+动态标签的宽度”。

代码语言:javascript
复制
Parent ContainerView (or UIView?)
|-----------------------------|
|     CV1      CV2     CV3    |
|   |-----| |-------| |---|   |
|   |o PHP| |o Swift| |o C|   |
|   |-----| |-------| |---|   |
|-----------------------------|   

只有当我能够自动操作“容器视图”的宽度时,这个场景才能工作,这是关于项目点+标签的宽度的。因此,我可以为每个容器确定固定的边距,并将它们水平地居中(可能通过使用父容器)。

实现这一目标的途径是什么?有什么方法可以在故事板上或程序上完成吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-10 05:19:31

父容器视图将自动调整宽度以适应内部内容,如果您的所有CV视图的宽度都超过了autolayout所能确定的宽度(您说过将为此使用said to fit )。然后,它们必须在第一个和最后一个之间有固定的垂直空格,也必须有到父容器的边距(引导和尾随)。父容器不能有受限的宽度(例如,固定宽度约束),因为它必须根据内部的内容调整大小,如果这样做会导致约束冲突,它将无法工作。如果不对父视图容器使用autolayout,或者有宽度约束,则可以使用

代码语言:javascript
复制
let size = parentViewContainer. systemLayoutSizeFittingSize(UILayoutFittingCompressedSize)

并将其设置为框架或宽度约束。

这里是一个演示这一点的示例项目。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36525673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档