SwiftUI - IOS 15 - Text . mimumscalefactor语言 - 总是被应用



找不到有关此问题的任何文档。

我的一个应用程序有一个文本视图。minimumscalefactor(0.5)。这在iOS 14.0中非常有效。* -当文本比视图宽时,它会很好地缩放以适应- IE填充屏幕的全宽度。

不幸的是,在iOS 15中,. minimumscalefactor似乎与内容大小无关。不需要缩放以适应的字符串正在被缩放。

这是一个未记录的更改吗?有没有我不知道的新方法?

代码如下:

var body: some View {
VStack() {
HStack() {
Text(supplier.name ?? "Unknown Supplier")
.font(.title)
.lineLimit(1)
.allowsTightening(true)
.minimumScaleFactor(0.5)
Button(action: {}) {
Image(systemName: "star.fill")
.imageScale(.large)
}
}
}
}

任何帮助都将是非常感激的。

编辑-这似乎只在某些iPhone上存在问题-在iPhone SE(第二代)iOS 15上进行初步测试。

使用.fixedSize将视图设置为固定

在你的例子中:

Text(supplier.name ?? "Unknown Supplier")
.font(.title)
.fixedSize(horizontal: false, vertical: true)
.lineLimit(1)
.allowsTightening(true)
.minimumScaleFactor(0.5)

文档:https://developer.apple.com/documentation/swiftui/menu/fixedsize(水平垂直:)

在我的例子中,行为是根植于包装器视图. 一旦我强迫它占据所有剩余的水平空间,内部(自动收缩)文本开始按预期工作。

HStack {
VStack {
Text("Big")
.lineLimit(1)
.minimumScaleFactor(0.01)
Text("Small")
}
}
.frame(maxWidth: .infinity) // 🪄

尽管如此,同样的代码在不同的iOS运行时的工作方式却不同,这还是有点令人不安。😔

相关内容

  • 没有找到相关文章

最新更新