簡體   English   中英

帶有 SwiftUI 的自定義操作表

[英]Custom action sheet with SwiftUI

我在導航頂部有一個 TabView 和一個包含用戶配置文件的選項卡。

當用戶觸摸封面/個人資料圖片時,我想展示一個具有自定義樣式的操作表。

自定義樣式如下所示:

自定義操作表

我已經嘗試在 ZStack 底部附加第二個視圖,但 TabView 總是在前面。

如何自定義操作表或如何隱藏 TabView?

謝謝

ZStack方法將在這種情況下工作。

我試過一個小例子,你可以調整並嘗試適應你的項目,看看它是否有效。

在此處輸入圖像描述

執行:

struct ContentView: View {
    @State var showingCustomSheet = false
    var body: some View {
        ZStack {
            VStack {
                Button(action: {
                     withAnimation {
                        self.showingCustomSheet.toggle()
                    }
                }) {
                    Text("Show Custom sheet")
                }
            }

            ZStack {
                HStack(alignment: .bottom) {
                    Spacer()
                    VStack (alignment: .leading, spacing: 10) {
                        Spacer()
                        Button(action: {}) { Text("Delete photo") }
                        Button(action: {}) { Text("Take photo") }
                        Button(action: {}) { Text("Choose photo") }
                        Button(action: {
                            withAnimation {
                                self.showingCustomSheet.toggle()
                            }
                        }) { Text("Cancel") }
                    }
                    Spacer()
                }
            }.background(Color.black.opacity(0.1))
               .edgesIgnoringSafeArea(.all)
               .offset(x:0, y: self.showingCustomSheet ? 0 : UIApplication.shared.keyWindow?.frame.height ?? 0)
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM