[使用UIKit添加导航栏项目时,请使用UIBarButtonItem.style设置其样式。这对于以粗体显示的Done按钮很重要。
SwitftUI的navigationBarItems(leading:trailing:)采用View
,但没有样式。您可以通过在视图中使用粗体按钮来破解外观相似的样式,但不会适应将来的OS样式更改(例如font weight而非bold
)。
如何使用SwiftUI设置导航栏项目的样式?
在SwiftUI中,您无需将样式附加到View组件中,而无需传递样式。这将适应将来的操作系统样式更改:
import SwiftUI
import PlaygroundSupport
struct ContentView: View {
var body: some View{
NavigationView {
Text("blah")
.navigationBarItems(leading: Text("done button")
.fontWeight(.medium)
.bold()
.foregroundColor(Color.red))
}
}
}
PlaygroundPage.current.setLiveView(ContentView())