Swift Eureka 隐藏更改部分
Swift Eureka Hide Section On Change
我正在使用找到的 Eureka Swift 表单库 here。
我有一个文本字段,每当您开始在其中输入内容时,我希望隐藏表单的其他部分。我一开始只是试图隐藏 1 个部分,但当我开始在该字段中输入时没有任何反应。我的代码如下:
form +++ Section("Device Search")
<<< IntRow()
{
[=11=].title = "Asset Tag"
[=11=].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()
{
[=11=].title = version
[=11=].tag = [=11=].title
}
}
此外,有没有一种方法可以使用 IntRow 但仅删除该行的格式化程序?
关于你的第二个问题 有没有一种方法可以使用 IntRow 但只删除行的格式化程序?
将这一行 [=14=].formatter = nil
添加到这一行的正下方 [=15=].placeholder = "Enter Asset Tag #"
你的第一个问题,如何在EurekaForm
中隐藏一个section
,首先你的部分初始化不是你想的那样,我会解释一下,你认为你正在用标签初始化你的部分,但是在 init 方法的部分定义 none 中使用 tag
作为参数所以要获得正确的部分你需要改变你的部分初始化这个
+++ Section("iOS Version"){ //"iOS Version" is actually the header text"
[=10=].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
}
}
之后你的 header 命名为“iOS 版本”在你的 IntRow
上写下任何数字后被隐藏
完整代码
form +++ Section("Device Search")
<<< IntRow()
{
[=13=].title = "Asset Tag"
[=13=].placeholder = "Enter Asset Tag #"
[=13=].formatter = nil
}
.onChange { row in
if let section = self.form.sectionBy(tag: "test")
{
section.hidden = true
section.evaluateHidden()
}
}
+++ Section("iOS Version"){
[=13=].tag = "test"
}
for version in countArray
{
form.last! <<< CheckRow()
{
[=13=].title = version
[=13=].tag = [=13=].title
}
}
我正在使用找到的 Eureka Swift 表单库 here。
我有一个文本字段,每当您开始在其中输入内容时,我希望隐藏表单的其他部分。我一开始只是试图隐藏 1 个部分,但当我开始在该字段中输入时没有任何反应。我的代码如下:
form +++ Section("Device Search")
<<< IntRow()
{
[=11=].title = "Asset Tag"
[=11=].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()
{
[=11=].title = version
[=11=].tag = [=11=].title
}
}
此外,有没有一种方法可以使用 IntRow 但仅删除该行的格式化程序?
关于你的第二个问题 有没有一种方法可以使用 IntRow 但只删除行的格式化程序?
将这一行 [=14=].formatter = nil
添加到这一行的正下方 [=15=].placeholder = "Enter Asset Tag #"
你的第一个问题,如何在EurekaForm
中隐藏一个section
,首先你的部分初始化不是你想的那样,我会解释一下,你认为你正在用标签初始化你的部分,但是在 init 方法的部分定义 none 中使用 tag
作为参数所以要获得正确的部分你需要改变你的部分初始化这个
+++ Section("iOS Version"){ //"iOS Version" is actually the header text"
[=10=].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
}
}
之后你的 header 命名为“iOS 版本”在你的 IntRow
完整代码
form +++ Section("Device Search")
<<< IntRow()
{
[=13=].title = "Asset Tag"
[=13=].placeholder = "Enter Asset Tag #"
[=13=].formatter = nil
}
.onChange { row in
if let section = self.form.sectionBy(tag: "test")
{
section.hidden = true
section.evaluateHidden()
}
}
+++ Section("iOS Version"){
[=13=].tag = "test"
}
for version in countArray
{
form.last! <<< CheckRow()
{
[=13=].title = version
[=13=].tag = [=13=].title
}
}