使用滑块更新SWIFTUI文本字体大小?

时间:2020-05-30 20:51:39

标签: swiftui swift5

我正在尝试更新字体大小,但使用了与滑块对象的用户交互。 但是使用下面的代码不会更新字体,因为文本不会根据更改的值进行更新。

@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)

1 个答案:

答案 0 :(得分:0)

只需更改Text函数的顺序:

.font(.subheadline)
.font(.system(size: CGFloat(fontSize)))
.foregroundColor(Color.white)

收件人:

.font(.system(size: CGFloat(fontSize)))
.font(.subheadline)
.foregroundColor(Color.white)

应该工作。