Eureka 内联选择器行 select 第一行
Eureka inline picker row select first row
当我展开 PickerInlineRow 时,我希望能够 select 第一个选项。对于只有一个选项的情况,我无法调用 onChange 方法,因此它永远不会被选中。
这是一个hack..但是我select第一行通过设置行值=网络回调中数组中的第一个元素。
if let row = self.form.rowBy(tag: "Row") as? PickerInlineRow<RowType> {
row.value = rowTypes.first
row.reload()
}
假设您已经创建了数组或对象
让项目 = ["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 = [=10=] 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()
})
Here .onCellSelection is called when user taps on the row so we will get the first value from our array and put the value in row and reload the row .
当我展开 PickerInlineRow 时,我希望能够 select 第一个选项。对于只有一个选项的情况,我无法调用 onChange 方法,因此它永远不会被选中。
这是一个hack..但是我select第一行通过设置行值=网络回调中数组中的第一个元素。
if let row = self.form.rowBy(tag: "Row") as? PickerInlineRow<RowType> {
row.value = rowTypes.first
row.reload()
}
假设您已经创建了数组或对象 让项目 = ["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 = [=10=] 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()
})
Here .onCellSelection is called when user taps on the row so we will get the first value from our array and put the value in row and reload the row .