创建带有自定义轮廓的浮动视图,如Notability

时间:2019-10-12 07:53:11

标签: swiftui

如何使用自定义边界创建这样的视图浮动视图,如图所示?这样,一旦用户在视图外部单击,它就会消失。 to

2 个答案:

答案 0 :(得分:1)

通常,您可以使用Popover来做到这一点:

@State var isPresented = false
var body: some View {
    Button(action: {
        self.isPresented = true
    }) {
        Text("Press me")
    }.popover(isPresented: $isPresented, arrowEdge: .top) {
        Text("Pop!") // You can put you own custom view here for the popover
    }
}

尽管它可以在iPad上正常工作(我也相信tvOS,但我尚未对其进行测试),但它无法与iPhone上的当前SwiftUI版本(截至2019年12月12日)一起正常使用。目前,上面的代码只会在iPhone上产生某种故障模式,我认为这不是iPhone上的预期功能。 Apple的弹出窗口文档目前不是很有帮助,但是here仍然有用。

iPad and iPhone popover example/comparison

答案 1 :(得分:0)

为您提供信息。在tvOS中无法使用popover。