簡體   English   中英

SwiftUI:如何僅為 iPad 自定義工作表?

[英]SwiftUI: How can I customize the sheet only for iPad?

我是 SwiftUI 的新手,但遇到以下問題。 當我單擊 iPhone 上的按鈕時,會出現以下內容

在此處輸入圖片說明

但是當我按下 iPad 上的按鈕時,會出現以下情況

在此處輸入圖片說明

選擇器不在整個工作表上。 如何像在 iPhone 上一樣在整個工作表上顯示 iPad 上的選擇器?

    struct ContentView: View {
    @State var value_2 = 1
    @State var show_1 = false
    
    var body: some View {
        VStack {
            Button(action: {
                self.show_1.toggle()
            }) {
                    Text("Push")
                }
            .sheet(isPresented: $show_1) {
                Sheet(show_0: self.$show_1, value_1: self.$value_2)
            }
        }
    }
}

struct Sheet: View {
    @Binding var show_0: Bool
    @Binding var value_1: Int
    
    var body: some View {
        NavigationView {
            number(value_0: $value_1)
                .navigationBarTitle(Text("Enter number"), displayMode: .inline)
                .navigationBarItems(trailing: Button(action: {
                    self.show_0 = false
                }) {
                    Text("Done").bold()
            })
        }
    }
}

struct number: View {
    @Binding var value_0: Int
    
    var body: some View {
        Section {
            Text("Headline")
            Picker("",selection: $value_0)
                    {
                        ForEach(1..<101) { value in
                            Text("\(value)")
                }
            }
        }
        .labelsHidden()
    }
}

據我了解您的意圖,您只需要更改導航視圖的樣式,例如

var body: some View {
    NavigationView {
        number(value_0: $value_1)
            .navigationBarTitle(Text("Enter number"), displayMode: .inline)
            .navigationBarItems(trailing: Button(action: {
                self.show_0 = false
            }) {
                Text("Done").bold()
        })
    }
    .navigationViewStyle(StackNavigationViewStyle())    // << here !!
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM