Swiftui 在另一个视图中包装的文本下划线
SwiftUI修饰符Swiftui 在另一个视图中包装的文本下划线,swiftui,Swiftui,SwiftUI修饰符.underline()可用于为文本加下划线: Text("Hello").underline() 类似地,修饰符.font(…)可用于更改为文本字体: Text("A nice picture").font(.caption) .font(…)修饰符也适用于任何视图以及文本,因此您可以在组或HStack或您自己的视图结构上使用.font()。这样做将更改视图中文本所使用的字体。如果我查找.font(),我可以看到它是视图上的一个
.underline()
可用于为文本加下划线:
Text("Hello").underline()
类似地,修饰符.font(…)
可用于更改为文本字体:
Text("A nice picture").font(.caption)
.font(…)
修饰符也适用于任何视图
以及文本
,因此您可以在组
或HStack
或您自己的视图
结构上使用.font()
。这样做将更改视图中文本所使用的字体。如果我查找.font()
,我可以看到它是视图
上的一个扩展,因此这是有意义的,尽管看起来相当神奇
但是,.underline()
修饰符不能(据我所知)用于任何视图
,以使其中的文本
带下划线。类似地,删除线()
和斜体()
以及许多其他文本
修饰符也不可用。它们被定义为文本
的扩展,因此只能处理这种类型
我想知道:
- 是否有一个很好的解决方案,以便我可以在父视图上使用
.underline()
在其包含的文本
子视图上使用下划线
- 为什么SwiftUI现在是这样的
视图上没有下划线。这里有一个链接,解决方案是使用新的协议TextModifier扩展文本。这将抽象样式,但每个文本都需要自己的修改器。哎呀,没有一个内置的方法。也许您可以创建一个支持通过环境传递的文本样式的自定义StyledText
视图