[英]Eureka- Hiding row depending on ActionSheetRow value
我試圖根據之前在ActionSheetRow中選擇的值來隱藏一行。如果用戶選擇他們居住在寒冷的氣候中,我想隱藏或保持隱藏他們希望游泳的地方的ActionSheetRow。
func testForm(){
form +++ Section("Test")
<<< TextRow("Your Name"){
$0.placeholder = "Enter Your Name"
}
<<< ActionSheetRow<String>("placeOfLiving") {
$0.title = "Continent"
$0.selectorTitle = "Where do you live?"
$0.options = ["Antartica","Australia","Africa", "Asia", "Europe", "North America", "South America"]
}
<<< ActionSheetRow<String>("swimming") {
$0.hidden = Condition.function([])
{ form in
if let section = form.rowBy(tag: "placeOfLiving") as? ActionSheetRow<String> {
if section.value == "Antartica" {
return true
}
}
return false
}
$0.title = "Swimming"
$0.selectorTitle = "Where do you like to swim?"
$0.options = ["Pool","Beach","Lake", "River"]
}
}
如何檢查ActionSheetRow的值,然后隱藏下面的行? 我嘗試了如何進行此檢查的不同方法,但是找不到類似的情況。 歡迎任何反饋
您需要傳遞要在hidden
function array
檢查值的rows
的tag
,如下所示。
$0.hidden = Condition.function(["rowTag"])
因此,您的代碼將變為
$0.hidden = Condition.function(["placeOfLiving"])
{ form in
if let row = form.rowBy(tag: "placeOfLiving") as? ActionSheetRow<String> {
return section.value == "Antartica"
}
return false
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.