xcode - 当尝试动态创建的 UILabel 进行换行时,文本消失

标签 xcode swift word-wrap cgrect sizetofit

我正在尝试显示一些从几个单词到一百个单词不等的描述文本。我已使用下面的代码将 UILabel 设置为换行以进行补偿

    descText.frame = CGRect(x: 115, y: 160, width: 465, height: 21)     
    descText.textAlignment = NSTextAlignment.Left
    descText.numberOfLines = 0
    descText.lineBreakMode = NSLineBreakMode.ByWordWrapping
    descText.sizeToFit()
    descText.Text = text
    dtlView.addSubview(descText)

如果我删除 descText.sizeToFit(),文本会重新出现但不会换行,如果我尝试将 CGRect 中的高度设置为 CGFloat.max,也会发生同样的情况。

我错过了什么?

最佳答案

使用 ByCharWrapping 而不是使用 ByWordWrapping

还要确保仅在分配文本后才调用 sizeToFit()

descText.lineBreakMode = NSLineBreakMode.ByCharWrapping
descText.Text = text
descText.sizeToFit()

关于xcode - 当尝试动态创建的 UILabel 进行换行时,文本消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30843414/

相关文章:

ios - 如何填充 UITableView 部分标题?

swift - 当父级是标签栏 View Controller 时,如何嵌入没有标签栏的 View Controller ?

qt - 有没有一种方法可以在一些简单的小部件(例如QPushButton)上启用文字自动换行?

html - 使用 dompdf 生成 PDF 时文本溢出表格

ios - 构建时间段的数据模型

c++ - 通过 Python 脚本调用 C++ 函数

objective-c - 如何在 "setUp"方法 Xcode 6 中使用异步过程(例如,登录)进行单元测试

iphone - 如何延迟 xcode 中的事件?

ios - 以编程方式将 UIViewController 加载到容器 View 中

swift 函数的默认缺席值