小编Moh*_*eer的帖子

工作表关闭后 SwiftUI 导航栏项目框架未对齐

在 SwiftUI 中关闭工作表后,导航栏按钮不可点击。以下是重现该问题的步骤

  1. 出示一张单子,
  2. 将应用程序移至后台一小段时间(2 秒)
  3. 恢复应用程序并向下滑动关闭工作表

现在导航栏按钮框架未对齐。点击的工作框架与按钮的可见框架不同。这在 iOS 16 模拟器上很容易重现,但在实际的 iOS 设备上会间歇性地重现。以下是重现该问题的最少代码



struct ContentView: View {
    @State private var showSheetView = false

    var body: some View {
        NavigationView {
            VStack {
                navigationBarView
                Color.blue
            }
            .sheet(isPresented: $showSheetView) {
                FilterView()
            }
            .navigationBarHidden(true)
        }
        .navigationViewStyle(.stack)
    }
    
    private var navigationBarView: some View {
        HStack(spacing: 0) {
            Spacer()
            Button {
                showSheetView = true
            } label: {
                Text("Filter")
                    .padding()
                    .background(Color.red)
            }
        }
    }
}

struct FilterView: View {
    var body: some View {
        Color.green
    } …
Run Code Online (Sandbox Code Playgroud)

ios swiftui xcode14

6
推荐指数
1
解决办法
626
查看次数

标签 统计

ios ×1

swiftui ×1

xcode14 ×1