swift - 通过 cell.detailTextLabel 添加 Eureka PickerInlineRow 值时,form.values() 显示初始文本
问题描述
- 环境:尤里卡:5.2.1 Xcode:11.4 iOS版本:13.4
TLDR;当我尝试从表单中打印出值时,文本变为初始文本
点击行时,我以编程方式输入数组中的第一项。这会填充单元格的值,我可以移动到不同的行。
let fruit = ["Apple", "Peach", "Pear"]
<<< PickerInlineRow<String>(){
$0.title = "Fruits"
$0.options = fruit
$0.tag = "pickerTag"
$0.value = "Select your favorite"
}
.onExpandInlineRow({ (cell, inlineRow, row) in
cell.detailTextLabel?.text = fruit[0]
})
当我单击“查看”按钮时,我尝试打印来自 pickerRow 的响应,但我没有得到单元格中的实际内容,我得到初始文本的响应(即选择您喜欢的)
<<< ButtonRow("Review") {
$0.title = "Review"
}
.onCellSelection { [weak self] (cell, row) in
self?.printoutValues()
}
在 printoutValues 函数中
let values = form.values()
print("picklerValue: \(values["pickerTag"] as? String)")
如果用户实际上移动了选择器视图,而不是仅仅点击该行然后到下一行,那么该值将被正确打印。
当用户第一次点击该行并保存它时,如何填充该行?
谢谢
解决方案
我相信这只会在较新版本的 Eureka 中停止工作,但无论如何我想通了。
在.onExpandInlineRow
你必须添加inlineRow.value = fruit[0]
推荐阅读
- android - 明确定义要使用的绑定适配器?
- apache - Apache http文件身份验证不起作用?
- ruby-on-rails - 在 Rails 中翻译单词“admin”时出现奇怪的错误
- ios - 在 SwiftUI 中,当一个 actionsheet 出现时会发生什么?
- java - 右键单击时不打开库存
- javascript - 获取 HTML 的值
- javascript - javascript/HTML:以对象作为 HTML 字符串文字中的参数绑定事件处理函数
- apache-kafka - flink 检查点和 kafka 生产者完全一次
- stripe-payments - 印度管理员账户时条纹支付不完整
- c# - 添加迁移时无法加载文件或程序集网络标准