使用滑块更新 SWIFTUI 文本字体大小?
Update SWIFTUI text font size with slider?
我正在尝试更新字体大小,但使用用户与滑块对象的交互。
但是使用下面的代码不会更新字体,因为文本不会根据更改的值进行更新。
@State var fontSize: CGFloat = 14.0
HStack(alignment: .firstTextBaseline, spacing: 20) {
Spacer()
Text(viewModel.isSelectionStarted ? viewModel.verseModels[viewModel.selectedFrameworkIndex1 ].English: "")
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
Text(viewModel.isSelectionStarted ? viewModel.verseModels[viewModel.selectedFrameworkIndex1 ].Spanish: "")
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
}
滑块代码:
Slider(value: $fontSize, in: 6...32, step: 1)
.padding()
.accentColor(Color.green)
.border(Color(hex: "#066892"), width: 2)
只需更改文本函数的顺序:
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
收件人:
.font(.system(size: CGFloat(fontSize)))
.font(.subheadline)
.foregroundColor(Color.white)
应该可以。
我正在尝试更新字体大小,但使用用户与滑块对象的交互。 但是使用下面的代码不会更新字体,因为文本不会根据更改的值进行更新。
@State var fontSize: CGFloat = 14.0
HStack(alignment: .firstTextBaseline, spacing: 20) {
Spacer()
Text(viewModel.isSelectionStarted ? viewModel.verseModels[viewModel.selectedFrameworkIndex1 ].English: "")
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
Text(viewModel.isSelectionStarted ? viewModel.verseModels[viewModel.selectedFrameworkIndex1 ].Spanish: "")
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
}
滑块代码:
Slider(value: $fontSize, in: 6...32, step: 1)
.padding()
.accentColor(Color.green)
.border(Color(hex: "#066892"), width: 2)
只需更改文本函数的顺序:
.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)
收件人:
.font(.system(size: CGFloat(fontSize)))
.font(.subheadline)
.foregroundColor(Color.white)
应该可以。