swiftui 将视图发送到另一个视图以弹出

问题描述

我想在标签页面显示弹出窗口。我将在子页面中创建弹出视图。我想通过共享类 ObservableObject 发送视图。反正我也解决不了。你能帮我解决这个问题吗?

我的股票价值

class sharedValues: ObservableObject {
    
    @Published var showingPopup = false
    
    var sharePopupView ? // i want to use this view for popup
}

我的标签页。它有很多子页面

struct TabPage: View {
    @EnvironmentObject var share : sharedValues
    
    var body: some View {
        vstack(spacing:0) {
            
            NavigationView{
                
                switch share.selectedItemIndex {
                case 0: Shop()
                case 1: ConversationsView()
                    
                case 2: GameHome()
                case 3: GameHome()
                default: GameHome()
                }
            }
            
            Tabbar()
            
        }
        .popup(isPresented: $share.showingPopup,type: .`default`,animation: .spring(),cloSEOnTapOutside: true) {
            share.sharePopupView
        }
        
    }
    
}

我想调用弹出的子页面之一

struct ConversationsView: View {
    
    @viewbuilder private func popup1View() -> some View {
        Button(action:{
            print("buton tap")
        }){
            Text("Placeholder")
        }
    }
    
    @viewbuilder private func sunpage1() -> some View {
        HStack(){
            Button(action: {
                share.sharePopupView = popup1View() // i want to use this view for popup
                share.showingPopup = true
            }) {
                Text("delete all")
            }
        }
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)