У меня есть вид с кнопкой в верхней панели в стеке:
ZStack{
HStack{
Spacer()
Image("navbar-icon")
Spacer()
}
HStack{
Spacer()
Button(
action: {
self.dataModel.resetModelVars()
do {
try QDB.si.refreshQueries()
}catch{
print("DB Error for Clear All")
}
},
label: {
Text("Reset")//.foregroundColor(Color("TPLink")).font(.system(size: 17))
}
)
}
}
.frame(height: 44, alignment: .center)
.padding([.horizontal])
Пока все хорошо, и это работает, UNLESS:
На мой взгляд, у меня есть environmentObject:
struct LeaderboardView: View {
@EnvironmentObject var dataModel: DM
Теперь я пытаюсь показать маленький виджет индикатора выполнения в верхней части моего вида, используя:
ZStack(alignment: .center) {
Rectangle()
.fill(Color("TPOrange"))
.frame( height: 4.0)
.scaleEffect(CGFloat(dataModel.progressViewProgress),anchor: UnitPoint(x: 0.0, y: 0.5))
.animation(.easeIn)
Rectangle()
.fill(Color("TPBG"))
.frame(height: 4.0)
}
Теперь вот странная часть. Это остановит мою кнопку navBar от запуска ее действия. ОДНАКО, если я заменю dataModel.progressViewProgress на жестко закодированное число, скажем, 0,01, оно будет работать.
Вот еще одна странная аномалия:
Если я заменю 0,01 на 0,0, то он снова остановитДействие кнопки при срабатывании.
Странно ... Мысли?