gpt4 book ai didi

ios - 根据 MultipleSelectorRow 的值启用/禁用行

转载 作者:可可西里 更新时间:2023-11-01 01:36:47 25 4
gpt4 key购买 nike

这是一个与名为 Eureka 的 Swift 开源项目相关的问题。并且我在 SO 上发布了这个问题,因为他们在这里监视他们的标签。

我创建了一个表单,其中有一个 MultipleSelectorRow,然后是一个 TextRow。默认情况下禁用 TextRowMultipleSelectorRow 显示选项列表。

form
+++ Section()
<<< MultipleSelectorRow<String>("Lead") {
$0.title = "Lead"
$0.options = ["Yahoo", "Yelp", "Google", "Referral or Other"]
}
.onPresent { from, to in
to.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .Done, target: from, action: #selector(ViewController.multipleSelectorDone(_:)))
}
<<< TextRow("Referral") {
$0.title = "Note Referral or Other"
$0.disabled = "$Lead != 'Referral or Other'"
}

我想要的是,如果用户选择最后一个选项,Referral 或 Other,我希望启用 TextRow

我目前上面的实现没有这样做。它保持禁用状态。我在这里做错了什么?

最佳答案

根据定义MultipleSelectorRow<T>持有Set<T>作为值类型,您似乎错误地期望一个 String 值。

已经说过你应该尝试使用这个谓词......

$0.disabled = "NOT $Lead contains 'Referral or Other'"

或者替代地..

$0.hidden = Condition.Function(["Lead"]) { form in
if let r1 : MultipleSelectorRow <String> = form?.rowByTag("tag1") {
return r1.value.contains("Referral or Other") == false
}
return false
}

关于ios - 根据 MultipleSelectorRow 的值启用/禁用行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36361200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com