[英]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.