3

我的目标是有一个List带有粗体标题和非粗体子标题的部分,这是我不知道该怎么做的事情。Text因此,我尝试使用包含部分粗体文本和部分正常非粗体文本的视图制作标题。

我尝试使用NSAttributedString适用于 a 的 an 来执行此操作,UILabel但它似乎不适用于 swiftUI 的Text对象。

我像这样制作标题:

Section(header: Text(docSection.formattedHeader)) {
    ...

哪里docSection.formattedHeaderNSAttributedString半粗体,半非粗体用a分隔的\n

但是然后我收到以下错误:

Initializer 'init(_:)' requires that 'NSAttributedString' conform to 'StringProtocol'

有没有办法做到这一点?

4

1 回答 1

5

由于NSAttributedStringSwiftUI(yet) 不兼容,因此您应该Text改用。但是对于Section,你可以使用 any Viewin 。所以你为什么不使用stackView这样的:

Section(header:
    VStack(alignment: .leading) {
        Text("Header").fontWeight(.bold)
        Text("Subheader").fontWeight(.regular)
    }
) {
    Text("Content")
}

您也可以使用HStack或任何其他组合视图。

于 2019-08-22T19:00:36.743 回答