Apple Watch 模态表中的 SwiftUI 图像

Posted

技术标签:

【中文标题】Apple Watch 模态表中的 SwiftUI 图像【英文标题】:SwiftUI image in modal sheets for Apple Watch 【发布时间】:2021-08-12 04:57:42 【问题描述】:

我想在正文中创建一个带有图像的模态表,就像在人机界面指南中一样。可以举个例子吗?

https://developer.apple.com/design/human-interface-guidelines/watchos/interaction/modality/

【问题讨论】:

【参考方案1】:

以下代码基本上重新创建了上面的示例屏幕截图:

import SwiftUI

struct ModalView: View 
    @Binding var isPresented: Bool
    
    var body: some View 
        VStack 
            Image(systemName: "headphones")
                .font(.system(size: 30))

            Text("To play audio, connect Bluetooth headphones to your Apple Watch.")
                .font(.footnote)
                .multilineTextAlignment(.center)
        
        .opacity(0.8)
        .padding(10)

        Spacer()

        Button("Connect a Device") 
            isPresented.toggle()
        .padding(.horizontal)
    


struct TestView: View 
    @State private var isPresentingModalView = false
    
    var body: some View 
        Button("Connect") 
            isPresentingModalView.toggle()
        
        .fullScreenCover(isPresented: $isPresentingModalView) 
            ModalView(isPresented: $isPresentingModalView)
        
    


struct TestView_Previews: PreviewProvider 
    static var previews: some View 
        TestView()
    


结果:

请参阅文档: https://developer.apple.com/documentation/swiftui/view/fullscreencover(ispresented:ondismiss:content:)

【讨论】:

以上是关于Apple Watch 模态表中的 SwiftUI 图像的主要内容,如果未能解决你的问题,请参考以下文章

Swiftui - Apple Watch 上的金属渲染

在 SwiftUI 中使用 WCSession 向 Apple Watch 发送消息

带有 SwiftUI 的 Apple Watch 上列表项的背景 [重复]

知道何时在 Apple Watch 模态界面控制器中单击取消按钮

为 SwiftUI Apple Watch App 实现基于页面的导航

使用 SwiftUi 为 Apple Watch 构建一个基本的高度计