在 TitleLabel 和 DetailLabel 上环绕文本 - 材质卡
Posted
技术标签:
【中文标题】在 TitleLabel 和 DetailLabel 上环绕文本 - 材质卡【英文标题】:Wrapping text on TitleLabel and DetailLabel - Material Card 【发布时间】:2019-10-08 16:35:44 【问题描述】:我正在使用 CosmicMind - 材质框架来创建卡片。 titleLabel 和 DetailLabel 不会换行。
我的问题是:我需要做什么来完成这样的任务,它应该由框架自动调整吗?
这是我目前所拥有的:
let card = Card()
var heartIcon = IconButton()
heartIcon = IconButton(image: Icon.favoriteBorder, tintColor: Color.red.base)
//Title Bar
let toolbar = Toolbar(rightViews: [heartIcon])
toolbar.title = cardData.cardTitleText
toolbar.titleLabel.textAlignment = .left
toolbar.titleLabel.numberOfLines = 0
toolbar.detail = "Company: " + cardData.cardTitleSubtitle
toolbar.detailLabel.font = RobotoFont.regular(with: 14)
toolbar.detailLabel.textColor = Color.grey.base
toolbar.detailLabel.textAlignment = .left
toolbar.detailLabel.numberOfLines = 0
这是我的输出:
更新: 我设法通过增加工具栏框架的大小来实现我想要的。
toolbar.frame = CGRect(x:0,y:0,width: view.frame.width,height: 100)
我的目标是至少显示 2 行文本。
谢谢!
【问题讨论】:
【参考方案1】:我没有使用 CosmicMind 框架的经验,但通常,the label.numberOfLines
属性定义了标签文本可以拥有的最大行数。您可以将其设置为 2 而不是 0,它应该会换行。
【讨论】:
很抱歉听到这个消息。也许你的 lineBreakMode 是错误的。尝试设置label.lineBreakMode = NSLineBreakMode.byWordWrapping
。
我设法通过增加工具栏本身的大小来获得我想要的布局。以上是关于在 TitleLabel 和 DetailLabel 上环绕文本 - 材质卡的主要内容,如果未能解决你的问题,请参考以下文章
如何在 segue 中初始化 UIButton 的 titleLabel 字体?
根据 titleLabel 的长度调整 UIButton 的大小
UIButton set titleLabel setValue(newLabel, forKeyPath: "titleLabel")