【发布时间】:2021-11-29 16:48:50
【问题描述】:
我正在尝试在 SwiftUI 中更改 TabView 的亮度,但是每当亮度切换时,子视图都会改变它们的垂直位置。这对我来说非常神秘,因为亮度对视图位置有任何影响似乎很奇怪。
如果您一直关注我过去的几个问题,您可能会意识到我想更改亮度,因为我想在新视图向上滑动时(按下按钮)使背景视图变暗。这就是为什么在示例代码中,我们必须包含 Z-Stack。
示例代码:
struct ContentView: View {
@State var press: Bool = Bool()
var body: some View {
ZStack {
TabView {
NavigationView {
Button(action: { press.toggle() }) {
Text("Toggle")
}
}
.tabItem {
Image(systemName: "square.stack").font(.title)
Text("View One")
}
NavigationView {
Button(action: { press.toggle() }) {
Text("Toggle")
}
}
.tabItem {
Image(systemName: "checkmark.square")
Text("View Two")
}
}
.brightness(press ? -0.1: 0)
}
}
}
【问题讨论】:
标签: swiftui navigation vertical-alignment tabview brightness