[英]How to properly present a popup view in SwiftUI (not as a sheet)?
我想在我的 iOS 应用程序中显示一个弹出窗口 Slider。 我目前正在使用这样的叠加层:
.overlay(
HStack {
if isEditingValue {
Slider(value: $valueToEdit)
.offset(y: 90)
}
}
)
问题是带有.overlay
的视图之后的任何内容都将绘制在 slider 的顶部,该 slider 已用.offset
向下移动,以免模糊要编辑的值。
我怎样才能让弹出窗口 Slider 显示在与它将编辑的视图正确相关的所有其他内容之上? 当弹出 Slider 可见时,我目前将所有内容隐藏在要编辑的值之下,这不是最佳的。
在一个视图层次结构中,这可以通过zIndex
来解决,例如
TargetView()
.overlay(
HStack {
if isEditingValue {
Slider(value: $valueToEdit)
.offset(y: 90)
}
}
)
.zIndex(1) // default is 0, so others will be below
//.zIndex(isEditingValue ? 1 : 0) // as variant
// ... other sibling views
如果视图层次结构复杂,则使用 slider 的视图可能会与来自不同视图层次结构的视图重叠,这种情况不能仅通过布局修改器解决,需要在应用程序 UI 设计的全局级别解决。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.