gpt4 book ai didi

ios - Swift - UITextView 不显示文本

转载 作者:行者123 更新时间:2023-11-28 19:25:04 32 4
gpt4 key购买 nike

我的 UITextView 没有显示它的 text,我不知道为什么。

let linkLabel: UITextView = {
let v = UITextView()
v.backgroundColor = .clear
v.text = "Link"
v.textColor = .lightGray
v.font = UIFont(name: "AvenirNext", size: 18)
v.font = v.font?.withSize(18)
v.textAlignment = .right
v.translatesAutoresizingMaskIntoConstraints = false
return v
}()

它之前是一个 UILabel 并且工作得很好。但我需要它是一个 UITextView。但是,如果我将其更改为 UITextView,就像在代码中一样,文本不会显示。

知道为什么会这样吗?

最佳答案

您的 UITextView 框架等于 CGRect.zero,与 UILabel 不同,UITextView 没有 intrinsic框架。这就是您看不到它的原因。


解决方案

  1. 使用初始化(框架:CGRect)

UITextView(frame: CGRect(x: 0, y: 0, width: 100, height: 30))
  1. 稍后设置框架属性

let v = UITextView()
v.frame = CGRect(x: 0, y: 0, width: 100, height: 30)

重要:

必须通过 InterfaceBuilder 或使用 UIView 对象的 view.addSubview 方法在代码中将 linkLabel 添加到 View

override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(linkLabel)
}

调试技巧:

  • 调试 View 层次结构

点击 Debug View Hierarchy调试区域顶部栏中的按钮,用于检查暂停应用的 View 层次结构的 3D 渲染

enter image description here

关于ios - Swift - UITextView 不显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59753900/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com