3

这是一个关于图书馆的问题,尤里卡

我有PushRow许多选项(名称)。而且我还将这些选项的第一项设置为初始化时默认选择的选项。

var names = [“杰克”、“卡西”、“瑞秋”、“马可”、“斧头”、“托拜厄斯”]

<<< PushRow<WindowStyle>("NamesRow") {
        $0.title = "Names"
        $0.options = names
        $0.value = names.first
    }

我运行该应用程序,并按预期默认选择了Jake 。如果我点击PushRow并重新选择Jake,现在它会被取消选择。我认为这是预期的行为。但是,如果我点击已选择的选项行,我想避免取消选择。

如果选择了相同的选项,则回调闭包中的row属性返回。我试图进行零检查并提前退出,但它不起作用。在所有取消选择发生之后,似乎方法被解雇了。onChangenilonChange

.onChange { row in
    guard let selectedName = row.value else {
        return
    }
}

如何禁用取消选择?

4

2 回答 2

5

不确定您是否找到了答案。

而且,虽然我自己没有这样做,但我想指出正确的方向。

他们已将其包含在对 Swift 3 的更新中。

请在https://github.com/xmartlabs/Eureka/issues/261#issuecomment-255439929找到相同的内容

而且仅供参考,

.onPresent { form, selectorController in
         selectorController.enableDeselection = false
}
于 2016-11-10T05:09:47.717 回答
1

这个问题有点老了,但如果有人还在寻找答案:
你可以这样做:

}.onPresent { form, row in
                row.enableDeselection = false}
于 2020-12-04T16:23:48.487 回答