这是关于图书馆的问题Eureka。
我有一个PushRow
,其中包含许多选项(名称)。我还将这些选项中的第一项设置为初始化时默认选择的项。
var names = [“Jake”,“Cassie”,“Rachel”,“Marco”,“Ax”,“Tobias”]
<<< PushRow<WindowStyle>("NamesRow") {
$0.title = "Names"
$0.options = names
$0.value = names.first
}
我运行应用程序,默认情况下会按预期选择 Jake 。如果我点按PushRow
并重新选择 Jake ,现在取消选中。我认为这是预期的行为。但是如果我点击已经选择的选项行,我想避免取消选择。
如果选择了相同的选项,row
回调闭包中的onChange
属性将返回nil
。我试着做一个零检查并提前退出,但它不起作用。在所有取消选择发生后,似乎onChange
方法被触发。
.onChange { row in
guard let selectedName = row.value else {
return
}
}
如何禁用取消选择?
答案 0 :(得分:0)
不确定您是否找到了答案。
而且,虽然我自己没有这样做,但我想指出正确的方向。
他们已将其包含在Swift 3的更新中。
请在https://github.com/xmartlabs/Eureka/issues/261#issuecomment-255439929
找到相同的内容仅供参考,
.onPresent { form, selectorController in
selectorController.enableDeselection = false
}
答案 1 :(得分:0)
这个问题有点老了,但是如果有人还在寻找答案:
您可以执行以下操作:
<input name="test[0]" type="checkbox" value="1">
<input name="test[1]" type="checkbox" value="1">
<input name="test[2]" type="checkbox" value="1">
<input name="test[3]" type="checkbox" value="1">
<input name="test[4]" type="checkbox" value="1">
<input name="test[5]" type="checkbox" value="1">
<input name="test[6]" type="checkbox" value="1">
<input name="test[7]" type="checkbox" value="1">
<input id="realValue" value="123">