0

我目前正在尝试使用Eureka,这是一个易于使用的 Swift 中 iOS 表单生成器。

一切都很顺利,除了一件事:

如何在example/InlineRows/PickerInlineRow的示例应用程序中设计自定义 PickerinlineRow

那里使用的代码如下:

<<< PickerInlineRow<NSDate>("PickerInlineRow") { (row : PickerInlineRow<NSDate>) -> Void in

    row.title = row.tag
    row.displayValueFor = {
        guard let date = $0 else{
        return nil
    }
    let year = NSCalendar.currentCalendar().component(.Year, fromDate: date)
        return "Year \(year)"
    }

    row.options = []
    var date = NSDate()
    for _ in 1...10 {
        row.options.append(date)
        date = date.dateByAddingTimeInterval(60*60*24*365)
    }
    row.value = row.options[0]
}

我想做的是同一种 InlinePicker 但允许用户选择 2 件事:月份和年份。问题是我没有掌握上面这段代码的逻辑,哪个 var 服务于什么。

我目前的尝试都完全不起作用..如果你有任何想法。

4

1 回答 1

2

您需要为此创建自定义选择器

在上面显示的 PickerInlineRow 中,row.title 是出现在行左侧的标题,而displayValueFor块用于定义出现在行右侧的值。

这些row.options是选择器中显示的选项,在您的情况下,您添加的每个月都会有一个选项。

最后row.value是行的值,您可以使用它来获取用户选择的内容。您还必须相应地更新它。

于 2015-11-12T17:13:08.133 回答