簡體   English   中英

對 iOS14 SwiftUI 的選擇器支持

[英]Picker support for iOS14 SwiftUI

我的應用程序在 SwiftUI 和 iOS13 上運行良好,現在我嘗試添加對 14 的支持,部分應用程序如下所示:

在此處輸入圖片說明

背景中的灰色不應該在那里。 我試過,在選擇器中將背景設置為白色,移除一些組件,移除框架,但沒有任何效果。

這是代碼:

 ZStack {
        if showingNewMealTime {
            ZStack {
                VStack(alignment: .center) {
                    ZStack{
                        Color.black.opacity(0.4)
                            .edgesIgnoringSafeArea(.vertical)
                        VStack(spacing: 20) {
                            Text("Change Time")
                                .bold().padding()
                                .frame(maxWidth: .infinity)
                                .background(Color.yellow)
                                .foregroundColor(Color.white)
                            
                            HStack {
                                VStack {
                                    Picker("", selection: $pickerHour){
                                        ForEach(1..<12, id: \.self) { i in
                                            Text("\(i)").tag(i)
                                        }
                                    }
                                    .frame(width: 50, height: 120)
                                    .clipped()
                                }
                                
                                VStack {
                                    Picker("", selection: $pickerMinutes){
                                        ForEach(0..<60, id: \.self) { i in
                                            Text("\(i)").tag(i)
                                        }
                                    }
                                    .frame(width: 50, height: 120)
                                    .clipped()
                                }
                                VStack {
                                    Picker("", selection: $pickerAmOrPm[pickerAmOrPmSelection]){
                                        ForEach(pickerAmOrPm, id: \.self) { i in
                                            Text("\(i)").tag(i)
                                        }
                                    }
                                    .frame(width: 50, height: 120)
                                    .clipped()
                                }
                            }
                            
                            Spacer()
                            
                            Button(action: {
                                ...
                            }){
                                Text("Save")
                            }
                            .padding(.horizontal)
                            .padding(.bottom, 30)
                        }
                        .frame(width:300, height: 300)
                        .background(Color.white)
                        .mask(RoundedRectangle(cornerRadius: 20))
                        .shadow(radius: 20)
                    }
                }
            }
        }
    }

發生了什么變化,我必須修復什么才能糾正那個灰色區域?

謝謝

請改用本機 DatePicker。

import SwiftUI

struct DatePickerView: View {
    @State var date: Date = Date()

    var body: some View {
        VStack {
            DatePicker("Date", selection: $date,
                   displayedComponents: .hourAndMinute)
                .frame(height: 50)
            Spacer()
        }
        .padding()
    }
 }

 struct DatePickerView_Previews: PreviewProvider {
    static var previews: some View {
        DatePickerView()
    }
 }

顯示上述代碼結果的圖像

欲了解更多信息:

SwiftUI 日期選擇器 - swiftcompiled.com

使用 DatePicker 選擇日期和時間 - hackingwithswift.com

如何創建日期選擇器並從中讀取值 - hackingwithswift.com

日期選擇器 - 文檔

(2020 年 10 月 11 日編輯):編輯添加了指向更多信息的鏈接。

暫無
暫無

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

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