我想在使用PickeredPickerStyle()的Picker中设置一些字体样式。 但是,任何字体格式都将被忽略。有没有一种方法可以为segmentedPicker设置字体? 我很确定它适用于默认的pickerWheel。
import UIKit
import PlaygroundSupport
import SwiftUI
// Make a SwiftUI view
struct ContentView: View {
@State private var selection: Int = 2
var body: some View {
Picker("", selection: self.$selection) {
Text("Shape").tag(0)
Text("Height").tag(1)
Text("Media").tag(2).font(.headline)
}
.font(.headline)
.cornerRadius(8)
.padding(10)
.pickerStyle(SegmentedPickerStyle())
}
}
// Make a UIHostingController
let viewController = UIHostingController(rootView: ContentView())
// Assign it to the playground's liveView
PlaygroundPage.current.liveView = viewController
// RUN!
答案 0 :(得分:2)
SwiftUI在后台使用UIKit(适用于iOS),您应该为UISegmentedControl
使用外观:
struct ContentView: View {
init() {
UISegmentedControl.appearance().selectedSegmentTintColor = .red
UISegmentedControl.appearance().setTitleTextAttributes(
[
.font: UIFont.boldSystemFont(ofSize: 24),
.foregroundColor: UIColor.white
], for: .selected)
UISegmentedControl.appearance().setTitleTextAttributes(
[
.font: UIFont.boldSystemFont(ofSize: 12),
.foregroundColor: UIColor.blue
], for: .normal)
}
var body: some View { ,,, }
}