不设置显式高度的情况下自动调整UILabel的大小
创始人
2024-12-28 03:30:49
0

要在不设置显式高度的情况下自动调整UILabel的大小,可以使用以下代码示例:

import UIKit

class ViewController: UIViewController {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let text = "This is a long text that needs to be displayed in a UILabel."
        
        let label = UILabel()
        label.translatesAutoresizingMaskIntoConstraints = false
        label.numberOfLines = 0
        label.text = text
        view.addSubview(label)
        
        // 设置label的约束
        label.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 20).isActive = true
        label.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20).isActive = true
        label.topAnchor.constraint(equalTo: view.topAnchor, constant: 100).isActive = true
        
        // 根据label中的文本内容自动调整label的高度
        let size = label.systemLayoutSizeFitting(UILayoutFittingCompressedSize)
        label.heightAnchor.constraint(equalToConstant: size.height).isActive = true
    }
}

在这个例子中,我们创建了一个UILabel,并将其文本设置为一个长文本。为了使UILabel的大小自动调整,我们将label.numberOfLines设置为0,以允许多行文本。然后,我们通过将label.translatesAutoresizingMaskIntoConstraints设置为false禁用自动布局约束,手动设置label的约束。最后,我们使用label.systemLayoutSizeFitting方法获取UILabel的大小,并将其高度约束设置为这个大小。这样,UILabel的高度将根据其文本内容进行自动调整。

相关内容

热门资讯

一分钟黑科技!一起跑得快外挂,... 一分钟黑科技!一起跑得快外挂,德扑之星开桌可以设置(详细透视辅助工具教程);是一款可以让一直输的玩家...
六分钟透明!友乐麻将赢牌器,德... 此外,数据分析德州(友乐麻将赢牌器)辅助神器app还具备辅助透视行为开挂功能,通过对客户友乐麻将赢牌...
9分钟透明!兴动互娱最强辅助神... 9分钟透明!兴动互娱最强辅助神器下载,pokermaster外 挂(详细透视辅助脚本教程)是一款可以...
三分钟教学!决战卡五星外 挂,... 三分钟教学!决战卡五星外 挂,德州之星辅助挂(详细透视辅助软件教程);决战卡五星外 挂软件透明挂作为...
六分钟了解!蜀山四川麻将怎么让... 六分钟了解!蜀山四川麻将怎么让系统发好牌,wpk德州伙牌打法(详细透视辅助挂教程);超受欢迎的蜀山四...
十分钟总结!打牌网十三道有挂吗... 《十分钟总结!打牌网十三道有挂吗,wpk数据统计(详细透视辅助app教程)》 打牌网十三道有挂吗软件...
七分钟方法!友乐麻将赢牌,we... 七分钟方法!友乐麻将赢牌,wepoke真的有挂嘛(详细透视辅助脚本教程);超受欢迎的wepoke真的...
4分钟黑科技!皮皮跑胡子有辅助... 4分钟黑科技!皮皮跑胡子有辅助吗,红龙扑克是有问题(详细透视辅助器教程)关于皮皮跑胡子有辅助吗的基本...
8分钟黑科技!大凉山生活号跑得... 8分钟黑科技!大凉山生活号跑得快辅助,pokernow可以开挂(详细透视辅助助手教程);(需添加指定...
一分钟规律!蜜瓜大厅拼三张小,... 一分钟规律!蜜瓜大厅拼三张小,fishpoker大菠萝外 挂(详细透视辅助插件教程);亲,其实确实真...