【问题标题】:Eureka inline picker row select first row尤里卡内联选择器行选择第一行
【发布时间】:2023-04-07 06:33:01
【问题描述】:

当我展开 PickerInlineRow 时,我希望能够选择第一个选项。对于只有一个选项的情况,我无法调用 onChange 方法,因此永远无法选择它。

【问题讨论】:

    标签: swift4 eureka-forms


    【解决方案1】:

    这是一个 hack.. 但是我通过在网络回调上设置行值 = 数组中的第一个元素来选择第一行。

      if let row = self.form.rowBy(tag: "Row") as? PickerInlineRow<RowType> {
        row.value = rowTypes.first
        row.reload()
      }
    

    【讨论】:

      【解决方案2】:

      假设您已经创建了数组或对象 让项目 = ["1","2","3","4","5","6"]

      << PickerInlineRow<String>(){
                  row in
                  row.tag = "inlineRow"
                  row.options = items
                  row.title = "Tap to select"
                  row.displayValueFor = {
                      guard let teacherName = $0 else {return nil}
                      return teacherName.name
                  }
                  }.onChange({ (row) in
                      guard let value = row.value else {return}
                      print(value)
                      self.selectedTeacher = value
                      print("Selected teacher name :\(self.selectedTeacher.name) , ID : \(self.selectedTeacher.id)")
                  }).onCellSelection({ (cell, row) in
                      row.value = items.first
                      row.reload()
                  })
      

      这里 .onCellSelection 在用户点击该行时被调用,因此我们将从数组中获取第一个值并将该值放入 row 并重新加载该行。

      【讨论】:

        猜你喜欢
        • 2020-04-09
        • 2012-10-28
        • 1970-01-01
        • 1970-01-01
        • 2019-07-02
        • 1970-01-01
        • 2021-03-13
        • 1970-01-01
        • 2011-11-22
        相关资源
        最近更新 更多