【发布时间】:2020-01-16 12:12:02
【问题描述】:
如何检查设备上的暗模式是否已启用。我想从视图中检查这一点,并有条件地显示或隐藏阴影。
我以为我可以从环境中获取 colorScheme,但我认为我错过了一些东西。
struct FloatingAddButton : View {
@Environment(\.colorScheme) var colorScheme
@Binding var openAddModal: Bool
var body : some View {
VStack {
Spacer()
HStack() {
Spacer()
Button(action: {
self.openAddModal = true
}) {
ZStack {
Circle()
.foregroundColor(Color(RetroTheme.shared.appMainTint))
.frame(width: 50, height: 50, alignment: .center)
if(self.colorScheme == .light) {
.shadow(color: .secondary, radius: 5, x: 0, y: 0)
}
Image(systemName: "plus")
.foregroundColor(Color.white)
}
} // End Button
}
}
}
}
【问题讨论】:
-
正如 dfd 在下面指出的那样,问题是尝试使用带有修饰符的 if 语句。请参阅问题中的更新代码。
-
两件事,我从来没有看到你的评论,因为你在评论上留下了“at”(@)符号。两年了,我也在学习!请参阅我对我的答案的评论,了解我希望你会做什么。在你和两个答案之间,这是 all 可以使用的东西。
标签: swiftui