Swift Eureka 隐藏更改部分
Posted
技术标签:
【中文标题】Swift Eureka 隐藏更改部分【英文标题】:Swift Eureka Hide Section On Change 【发布时间】:2017-08-26 22:39:46 【问题描述】:我正在使用 here 找到的 Eureka Swift 表单库。
我有一个文本字段,当您开始输入时,我希望隐藏表单的其他部分。我一开始只是试图隐藏 1 个部分,但当我开始在该字段中输入时没有任何反应。我的代码如下:
form +++ Section("Device Search")
<<< IntRow()
$0.title = "Asset Tag"
$0.placeholder = "Enter Asset Tag #"
.onChange row in
self.form.sectionBy(tag: "ios Version")?.hidden = true
+++ Section("iOS Version")
for version in countArray
form.last! <<< CheckRow()
$0.title = version
$0.tag = $0.title
另外,有没有办法使用 IntRow 但只删除行的格式化程序?
【问题讨论】:
【参考方案1】:关于你的第二个问题 有没有办法使用 IntRow 但只删除行的格式化程序?
在$0.placeholder = "Enter Asset Tag #"
下方添加这一行$0.formatter = nil
你的第一个问题,如何在EurekaForm
中隐藏一个section
,首先你的section初始化不是你想的那样,我自己解释一下,你认为你在初始化您的部分带有标记,但在部分定义中,没有任何 init 方法使用 tag
作为参数,因此要获得正确的部分,您需要更改此部分的初始化
+++ Section("iOS Version") //"iOS Version" is actually the header text"
$0.tag = "test" //this is the tag
之后你需要修改这个
.onChange row in
self.form.sectionBy(tag: "iOS Version")?.hidden = true
这个人
.onChange row in
if let section = self.form.sectionBy(tag: "test")
section.hidden = true
section.evaluateHidden() //you are missing calling this method
在IntRow
上写下任何数字后,您名为“iOS版本”的标题将被隐藏
完整代码
form +++ Section("Device Search")
<<< IntRow()
$0.title = "Asset Tag"
$0.placeholder = "Enter Asset Tag #"
$0.formatter = nil
.onChange row in
if let section = self.form.sectionBy(tag: "test")
section.hidden = true
section.evaluateHidden()
+++ Section("iOS Version")
$0.tag = "test"
for version in countArray
form.last! <<< CheckRow()
$0.title = version
$0.tag = $0.title
【讨论】:
以上是关于Swift Eureka 隐藏更改部分的主要内容,如果未能解决你的问题,请参考以下文章
Swift Eureka forms:如何限制多值部分中的行数?