SwiftUI 调整FontSizeToFitWidth 等效项

F.S*_*SO7 2 iphone cocoa-touch ios swift swiftui

我正在构建一个应用程序,其中SwiftUI包含很多组件,包括一个Text包含长字符串的视图。

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

对此最好的解决方案是什么?是否有UILabel's adjustsFontSizeToFitWidthin的等效项SwiftUI

谢谢你!

Asp*_*eri 10

不完全是,但有点...

Text("Your long next here")
   .minimumScaleFactor(0.2) // value is up to you
Run Code Online (Sandbox Code Playgroud)

  • @F.SO7,在 Xcode 编辑器中按住 Option 键单击它,您将看到默认文档:),无需将其复制粘贴到此处。 (2认同)

Nic*_*ica 6

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

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