SwiftUI 调整 FontSizeToFitWidth 等效项

SwiftUI adjustsFontSizeToFitWidth equivalent

提问人:F.SO7 提问时间:4/25/2020 更新时间:8/23/2022 访问量:8449

问:

我正在构建一个包含许多组件的应用程序,包括一个包含长字符串的视图。SwiftUIText

当我在 iPhone 11 上启动应用程序时,一切正常,但是当我在较小的设备(例如 iPhone SE)上启动它时,视图会剪切中间的文本,并显示三个点 (...) 而不是文本的其余部分。Text

最好的解决方案是什么?的 in 有等价物吗?UILabeladjustsFontSizeToFitWidthSwiftUI

谢谢!

iOS Swift iPhone Cocoa-Touch SwiftUI

评论


答:

30赞 Asperi 4/25/2020 #1

不完全是,但有点......

Text("Your long next here")
   .minimumScaleFactor(0.2) // value is up to you

评论

0赞 F.SO7 4/25/2020
谢谢。这就是工作。你能解释一下这是做什么的吗?minimumScaleFactor
4赞 Asperi 4/25/2020
@F.SO7,在 Xcode 编辑器中按住 Option 键单击它,您将看到默认文档:),无需在此处复制粘贴。
10赞 Nicolas Mandica 4/25/2020 #2

您可以使用非常大的字体大小,并用于让文本缩小。您还可以添加以强制文本位于一行上。func minimumScaleFactor(_ factor: CGFloat)lineLimit(1)

Text("My long text adjusted to fit width")
    .font(.system(size: 200))
    .minimumScaleFactor(0.0001)
    .lineLimit(1)