1

我正在尝试实现一个ZStack内部navigationBarItems来加载自定义警报。这是我的实现:

    var body: some View {
        VStack{
            List(self.itemsStore.names){ item in
                Text("hello")
            }
        }
        
        .navigationBarItems(trailing: Button(action: {
            ZStack {
                ItemsAlert(isShown: $isPresented, text: $text)
            }
            
        }, label: {
            Image(systemName: "plus")
        }))
    }

在这一行我收到此错误:

在此处输入图像描述

你们中有人知道我为什么会收到这个警告吗?或者是否可以解决此错误?

我会非常感谢你的帮助

4

1 回答 1

0

您不能将 SwiftUI 视图关闭 - 它没有意义,视图应该在视图层次结构中,按钮可以激活状态以使用视图进行操作,例如

var body: some View {
    ZStack {
        ItemsAlert(isShown: $isPresented, text: $text)
        
        VStack{
           List(self.itemsStore.names){ item in
               Text("hello")
           }
        }
    }

    
    .navigationBarItems(trailing: Button(action: {
       self.isPresented = true    // << activate state            
    }, label: {
        Image(systemName: "plus")
    }))
}
于 2020-10-17T04:31:56.220 回答