小编Har*_*kar的帖子

SwiftUI DatePicker 问题 iOS 17.1

下面的代码在iOS 17.0.1中运行良好,但在最新的更新中,当我们点击17.1 DatePicker 时,它不会打开。

经过几次尝试,我发现长按大约 2-3 秒,它会打开日期选择器。

这个问题有什么解决办法吗?如何仅在点击时打开?

VStack(alignment: .leading){
Text("Date".localized())
    .applyFont(style: .Medium, size: 18)
    .foregroundColor(Colors.grayLight)
        HStack{
            let lastYear = Calendar.current.date(byAdding: .year, value: -1, to: Date()) ?? Date()
                if let date = checkLowerBound(){
                    DatePicker("",selection:$selectedDate, in: date...Date(), displayedComponents: [.date])
                        .frame(width: 100)
                    }else{
                    DatePicker("",selection:$selectedDate, in: lowestDate...Date(), displayedComponents: [.date])
                        .frame(width: 100)
                    }
                    Spacer()
                    }
                    .padding(.horizontal, 10)
                }
    .cardProperty()
    .allowsHitTesting(!(eventTransaction != nil && eventTransaction?.by != UserDefaults.userID))
Run Code Online (Sandbox Code Playgroud)

datepicker swiftui

10
推荐指数
2
解决办法
1564
查看次数

UIDatePicker 在 macCatalyst 中不起作用(Xcode 11 Beta 5)

我们正在使用 xcode 11 beta 5 中的催化剂 swift 将我们的 iOS 应用程序转换为 macCatalyst 兼容。

我们遇到了默认 DatePicker 未显示在窗口中的问题。

我正在为 mac 尝试这个解决方案,它会在视图中添加日期选择器,但我想要另一个合适的解决方案。还有什么建议吗?

func datepickerWillLoad() {
        self.datePicker.datePickerMode = .date
        self.datePicker.maximumDate = Date()
        self.datePicker.backgroundColor = UIColor.Theme.lightBackground
        self.datePicker.setValue(UIColor.Theme.whiteColor, forKeyPath: "textColor")
        self.datePicker.addTarget(self, action: #selector(didChangedDatePickerValue), for: .valueChanged)

        //if user open picker and without change click on done
        self.dateOfBirthTextField.addTarget(self, action: #selector(didChangedDatePickerValue), for: .editingDidEnd)

        #if targetEnvironment(macCatalyst)
            datePicker.frame = CGRect(x: 0, y: self.view.frame.height - 200 , width: self.view.frame.width, height: 200)
            self.view.addSubview(datePicker)
        #else
            self.dateOfBirthTextField.inputView = datePicker
        #endif
    }
Run Code Online (Sandbox Code Playgroud)

catalyst uidatepicker swift xcode11 uikitformac

8
推荐指数
1
解决办法
1332
查看次数

Xcode 11-在催化剂快速中禁用调整大小模式

我们正在使用Xcode 11中的Catalyst 将基于Swift的iOS应用转换为Mac兼容。

用户调整应用程序窗口大小时,我们在UI中遇到问题。那么我们可以禁用调整大小模式并为应用程序窗口提供修复框架吗?

swift xcode11 uikitformac mac-catalyst

7
推荐指数
1
解决办法
549
查看次数