ios - Eureka 表单(Swift)中的 MultipleSelectorRow 如何将 FormValues 转换为字符串数组?

标签 ios swift eureka-forms

谁能帮我从 Eureka 表单的 MultipleSelectorRow 中检索值?

我有一个像这样的多选行,其中列出了楼层。

  <<< MultipleSelectorRow <String> {
            $0.title = "  *Floor"
            $0.tag = "floor"
            $0.options = floorArray
            $0.validationOptions = .validatesOnChange
            $0.add(rule: RuleRequired())
            }.onPresent { from, to in
               to.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: from, action: #selector(SRElementsForInspectionVC.multipleSelectorDone(_:)))
            }.cellUpdate({(cell , row) in
                if !row.isValid{
                    // CELL BORDER HAS TO BE RED
                 cell.textLabel?.textColor = .red

                } else {
                    // do something
                }
            })

然后当我尝试检索我调用的提交按钮上的值时,

let formvalues = self.form.values()
    if let floor = formvalues["floor"]{
        if floor != nil{
            print(floor)

            for f in floor as! [String: Any] {
                let fl = f as! String
                print(fl)
                // Print the floor
            }

        }
    }

但我无法获得正确的转换。请帮忙。

Optional(Set(["4", "1", "3", "2"])) Could not cast value of type 'Swift.Set' (0x7fe07537f348) to 'Swift.Dictionary' (0x10999ed38). 2019-01-30 12:48:36.283692+0530 SIDERISE[22242:772718] Could not cast value of type 'Swift.Set' (0x7fe07537f348) to 'Swift.Dictionary' (0x10999ed38).

最佳答案

是的,你可以这样解决

if let _floors = formvalues["floor"] as? Set<String> {
      for _floor in _floors{
          print(_floor)
      }
}

我和一个 friend 花了 90 分钟/2 小时来解决这个问题

关于ios - Eureka 表单(Swift)中的 MultipleSelectorRow 如何将 FormValues 转换为字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54435206/

相关文章:

swift - 如何在 Eureka SelectableSection 上进行适当的响应式(Reactive)扩展

iphone - 如何将 UILabel View 更改为 UIImageView Xcode,Iphone

ios - 调用 [locationManager requestWhenInUseAuthorization] 时警报 View 自行消失;

ios - 关闭 WKWebView 并使用 Swift 4 更改 ViewController

ios - 尝试减少 for 循环 Swift 中的内存影响 (4)

ios - 将 Eureka 表单数据上传到 firebase

android - 从 Swift 访问 Kotlin 标准库

ios - RestKit:如何批处理多个请求并在完成后获得响应?

swift - iOS Swift - 将数据从第一个 ViewController 传递到第三个 ViewConTroller

Swift Eureka - 捕获 MultivaluedSection 删除操作