【发布时间】:2019-09-15 14:37:27
【问题描述】:
我有一个文本视图,我想将它配置为包裹第一个不适合的字符。在 UIKit 中,这相当于设置 label.lineBreakMode = .byCharWrapping。这已经为 SwiftUI Text 实现了吗?我在documentation for Text 中找不到任何内容。
我想这样做的原因是我要向用户显示一个长代码,所以最好用字符而不是单词来换行。
【问题讨论】:
标签: swiftui
我有一个文本视图,我想将它配置为包裹第一个不适合的字符。在 UIKit 中,这相当于设置 label.lineBreakMode = .byCharWrapping。这已经为 SwiftUI Text 实现了吗?我在documentation for Text 中找不到任何内容。
我想这样做的原因是我要向用户显示一个长代码,所以最好用字符而不是单词来换行。
【问题讨论】:
标签: swiftui
不确定这是否有帮助,但我正在使用以下内容,这会导致长词被字符包裹:
Text("Supercallifragilisticexpialidocious")
.font(.system(size: 100))
.minimumScaleFactor(0.01)
.lineLimit(3)
.multilineTextAlignment(.leading)
不幸的是,对于我的用例,我不希望文本按字符换行。如果我设置 lineLimit(1) 可以正常工作并且减小字体大小以将文本保持在 1 行。但是,如果 Text 是多个单词,例如 Text("Practically perfect in every way") 那么我希望字符串由单词包裹。我似乎无法同时获得多个单词的自动换行和长单词的字体缩放。
【讨论】: