我有一些长度不确定的文本。我想调整按钮的大小以显示文本。有时文本太多,这种情况下我想将其限制在某个宽度内。如何在UIButton上实现这个功能。 上面的文本太长了,我只想显示大约40个字符。我正在尝试使用范围,我得到以下内容: 最终结果:
使用Autolayout,添加一个宽度约束,并将宽度约束的关系设置为“小于等于”常数(最大宽度)。只要没有其他固定宽度约束或间距约束,UIButton应该自动调整大小以适合文本的最大宽度。更新: 为了使其适用于不同的屏幕尺寸,不要添加宽度约束,而是将右侧间距约束添加到父视图(例如)。然后将其设置为“大于等于”20pt。这意味着间距将始终自动调整为尽可能大,而不会超出屏幕(宽度自适应文本)。
我会创建一个变量来测量文本的长度,然后将按钮的框架分配给该变量乘以某个数字。如果文本超过一定数量(在您的情况下为40个字符),那么我会使按钮更高,并将行数设置为0,以便它溢出到下一个。如果您只想将其限制在40个字符以内,则应该有一种方法来防止输入超过40个字符。