#ios #swiftui
Вопрос:
enum FontSizeForBook:Int, CaseIterable {
case small
case medium
case large
case extraLarge
var fontSize:Font {
switch self {
case .small:
return Font.system(size: 12)
case .medium:
return Font.system(size: 14)
case .large:
return Font.system(size: 16)
case .extraLarge:
return Font.system(size: 18)
}
}
}
Используя его в виду, как —
@State var currentFont = FontSizeForBook.allCases[0].fontSize
ForEach(0..<FontSizeForBook.allCases.count) { index in
HStack {
Button(action: {
currentFont = FontSizeForBook.allCases[index].fontSize
print("tapped-->", index)
}, label: {
Image(systemName: "circle")//record.circle
Text("A")
.font(currentFont)
})
}
}
Действие кнопки срабатывает, но шрифт не меняется.
таким образом, на основе выбора шрифта обновление шрифта не будет получено.
Комментарии:
1. Этот код отлично работает для меня (хотя изменения в размере шрифта очень незначительны). Возможно, у вас есть настройка специальных возможностей, которая позволяет шрифту отображаться в больших размерах?