小编Hus*_*iry的帖子

SwiftUI:如何获取今天的日历视图?

我一直在 SwiftUI 中寻找一种方法,仅以小时间隔获取今天的视图,就像 iOS 的日历应用程序一样,如果 SwiftUI 有默认的内置视图,那么那就太好了,如果没有,并且有一个 GitHub 库可以完成这项工作那么我也可以使用它,我在网上找到了一种在 SwiftUI 中显示年/月视图的方法:

import SwiftUI

fileprivate extension DateFormatter {
    static var month: DateFormatter {
        let formatter = DateFormatter()
        formatter.dateFormat = "MMMM"
        return formatter
    }

    static var monthAndYear: DateFormatter {
        let formatter = DateFormatter()
        formatter.dateFormat = "MMMM yyyy"
        return formatter
    }
}

fileprivate extension Calendar {
    func generateDates(
        inside interval: DateInterval,
        matching components: DateComponents
    ) -> [Date] {
        var dates: [Date] = []
        dates.append(interval.start)

        enumerateDates(
            startingAfter: interval.start,
            matching: components,
            matchingPolicy: .nextTime
        ) { …
Run Code Online (Sandbox Code Playgroud)

swiftui ios14

5
推荐指数
1
解决办法
2922
查看次数

SwiftUI:提交后留在同一个 TextField 上?

即使用户点击键盘上的 Return 键,SwiftUI 中是否也可以将输入光标保持在同一个文本字段上?

这是我的代码:

struct RowView: View {
    @Binding var checklistItem: ChecklistItem
    @ObservedObject var checklist = Checklist()
    @ObservedObject var viewModel: ChecklistViewModel
    var body: some View {
        HStack {
            Button {
                self.checklistItem.isChecked.toggle()
                self.viewModel.updateChecklist(checklistItem)
            } label: {
                Circle()
                    .strokeBorder(checklistItem.isChecked ? checklistSelected : contentPrimary, lineWidth: checklistItem.isChecked ? 6 : 2)
                    .foregroundColor(backgroundSecondary)
                    .clipShape(Circle())
                    .frame(width: 16, height: 16)
            }.buttonStyle(BorderlessButtonStyle())
            // swiftlint:disable trailing_closure
            TextField(
                "Add...",
                text: $checklistItem.name,
                onCommit: {
                    do {
                        if !checklistItem.name.isEmpty {
                            self.viewModel.updateChecklist(checklistItem)
                            self.checklistItem.name = checklistItem.name
                        }
                    }
                }
            )
            // swiftlint:enable trailing_closure …
Run Code Online (Sandbox Code Playgroud)

textfield swiftui

3
推荐指数
1
解决办法
2248
查看次数

UIPickerView显示问号

我正在尝试在PickerView中显示血型,但由于某种原因,选项仅显示为问号!

这是我的代码:

    class RegisterViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {
    //Methods for PickerViewDataSource

    @available(iOS 2.0, *)
    public func numberOfComponents(in pickerView: UIPickerView) -> Int {
        return 1
    }
    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return pickerDataSource.count;
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
        return pickerDataSource[row]
    }

    @IBOutlet weak var selectedDate: UILabel!
    @IBOutlet weak var birthDatePicker: UIDatePicker!

    @IBOutlet weak var mobileNumberField: UITextField!
    @IBOutlet weak var emailField: UITextField!
    @IBOutlet weak var nameField: UITextField!

    @IBOutlet weak …
Run Code Online (Sandbox Code Playgroud)

uipickerview swift3

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

标签 统计

swiftui ×2

ios14 ×1

swift3 ×1

textfield ×1

uipickerview ×1