swift 中的 Eureka lib:如何循环行?
Eureka lib in swift: How can I loop rows?
也许这是一个无用的问题,但我正在尝试用 labelRow 做一个“for 循环”,但它没有做我想做的事。
我想要与 Eureka 的示例项目相同的东西与 SegmentedRow,但在段中我想为行做一个循环。
有人可以指导我吗?
这是我尝试加载的视图:
self.form = Section()
<<< SegmentedRow<String>("segments"){
[=11=].options = ["Passées", "En cours", "Futures"]
[=11=].value = "En cours"
}
+++ Section(){
[=11=].tag = "past_s"
[=11=].hidden = "$segments != 'Passées'" // .Predicate(NSPredicate(format: "$segments != 'Sport'"))
}
for it in self.past {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
self.form +++= Section(){
[=11=].tag = "waiting_s"
[=11=].hidden = "$segments != 'En cours'"
}
for it in self.waiting {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
self.form +++= Section(){
[=11=].tag = "futur_s"
[=11=].hidden = "$segments != 'Futures'"
}
for it in self.future {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
这就是我在等的:)
self.form = Section()
<<< SegmentedRow<String>("segments"){
[=12=].options = ["Passées", "En cours", "Futures"]
[=12=].value = "En cours"
}
+++ Section(){
[=12=].tag = "past_s"
[=12=].hidden = "$segments != 'Passées'" // .Predicate(NSPredicate(format: "$segments != 'Sport'"))
}
<<< LabelRow() { row in
row.title = "1"
}
<<< LabelRow() { row in
row.title = "temp"
}
+++ Section(){
[=12=].tag = "waiting_s"
[=12=].hidden = "$segments != 'En cours'"
}
<<< LabelRow() { row in
row.title = "2"
}
<<< LabelRow() { row in
row.title = "temp"
}
+++ Section(){
[=12=].tag = "futur_s"
[=12=].hidden = "$segments != 'Futures'"
}
<<< LabelRow() { row in
row.title = "3"
}
<<< LabelRow() { row in
row.title = "temp"
}
我也试过了(还有很多其他方法):
form +++ Section()
form.last! <<< SegmentedRow<String>("segments"){
[=13=].options = ["Passées", "En cours", "Futures"]
[=13=].value = "En cours"
}
form +++= Section(){
[=13=].tag = "past_s"
[=13=].hidden = "$segments != 'Passées'"
}
for past in self.past {
form.last! <<< LabelRow() { row in
row.title = "1"
}
}
也试试这个:
form = Section()
<<< SegmentedRow<String>("segments"){
[=14=].options = ["Passées", "En cours", "Futures"]
[=14=].value = "En cours"
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
self.pastSection = Section("past_s") {
[=14=].tag = "past_s"
[=14=].hidden = "$segments != 'Passées'"
}
self.waitingSection = Section("waiting_s") {
[=14=].tag = "waiting_s"
[=14=].hidden = "$segments != 'En cours'"
}
self.futurSection = Section("futur_s") {
[=14=].tag = "futur_s"
[=14=].hidden = "$segments != 'Futures'"
}
for past in self.past {
self.pastSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
for waiting in self.waiting {
self.waitingSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
for futur in self.future {
self.futurSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
但是我得到了这样的错误:
终于找到答案了!
form.delegate = nil
form.removeAll()
form +++= Section("DuplicateCounter") { row in row.tag = "DuplicateCounter" }
<<< SegmentedRow<String>("segments"){
[=10=].options = ["Passées", "En cours", "Futures"]
[=10=].value = "En cours"
}
self.pastSection = Section("past_s") {
[=10=].tag = "past_s"
[=10=].hidden = "$segments != 'Passées'"
}
self.waitingSection = Section("waiting_s") {
[=10=].tag = "waiting_s"
[=10=].hidden = "$segments != 'En cours'"
}
self.futurSection = Section("futur_s") {
[=10=].tag = "futur_s"
[=10=].hidden = "$segments != 'Futures'"
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
for past in self.past {
self.pastSection!
<<< LabelRow("\(past.id)") {
[=10=].title = "test"
}
}
for waiting in self.waiting {
self.waitingSection!
<<< LabelRow("\(waiting.id)") {
[=10=].title = "test"
}
}
for futur in self.future {
self.futurSection!
<<< LabelRow("\(futur.id)") {
[=10=].title = "test"
}
}
我的方法是使用 Json 文件和循环条目 -->
do {
if let file = Bundle.main.url(forResource: "linhas_fretados", withExtension: "json") {
let data = try Data(contentsOf: file)
let json = JSON(data: data)
for (_,subJson):(String, JSON) in json {
let inserir_fretado = Linhas_Fretado(
linha: subJson["Linha"].stringValue,
hora_saida_sa: subJson["Campus Santo André Partida"].stringValue,
hora_saida_sbc: subJson["Campus São Bernardo Partida"].stringValue,
hora_saida_tmnl: subJson["Terminal Leste"].stringValue)
if(subJson["Campus Santo André Partida"] != ""){
self.Saida_SA.append(inserir_fretado)
}
if(subJson["Terminal Leste"] != ""){
self.Saida_TMNL.append(inserir_fretado)
}
if(subJson["Campus São Bernardo Partida"] != ""){
self.Saida_SBC.append(inserir_fretado)
}
}
} else {}
} catch {
print(error.localizedDescription)
}
let formulario = form
formulario +++ Section("Onde Voce está?:")
<<< SegmentedRow<String>("segments"){
[=10=].options = ["SA", "TERMINAL", "SBC"]
[=10=].value = "SA"
}
//#################### ONIBUS SAINDO DE SSANTOS ANDRE MANO #############
formulario +++ Section("Saindo de SA"){
[=10=].tag = "SA_s"
[=10=].hidden = "$segments != 'SA'"
}
var i = 0
while i <= (Saida_SA.count-1) {
form.sectionBy(tag: "SA_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_SA[i].linha)" ; [=10=].value = self.Saida_SA[i].hora_saida_sa ; [=10=].disabled = true }
i = i + 1
}
//#################### ONIBUS SAINDO DO TERMINALLLLOUAOOOASOASOA #############
formulario +++ Section(){
[=10=].tag = "TERMINAL_s"
[=10=].hidden = "$segments != 'TERMINAL'"
}
var a = 0
while a <= (Saida_SA.count-1) {
form.sectionBy(tag: "TERMINAL_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_TMNL[a].linha)" ; [=10=].value = self.Saida_TMNL[a].hora_saida_tmnl ; [=10=].disabled = true }
a = a + 1
}
//#################### ONIBUS SAINDO DE SAO BERNARDO DO CAMPO #############
formulario +++ Section(){
[=10=].tag = "SBC_s"
[=10=].hidden = "$segments != 'SBC'"
}
var i2 = 0
while i2 <= (Saida_SA.count-1) {
form.sectionBy(tag: "SBC_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_SBC[i2].linha)" ; [=10=].value = self.Saida_SBC[i2].hora_saida_sbc ; [=10=].disabled = true }
i2 = i2 + 1
}
我浪费了很多时间来创建这个并在互联网上搜索,我没有找到其他类似的东西,所以我希望你喜欢兄弟。
也许这是一个无用的问题,但我正在尝试用 labelRow 做一个“for 循环”,但它没有做我想做的事。
我想要与 Eureka 的示例项目相同的东西与 SegmentedRow,但在段中我想为行做一个循环。
有人可以指导我吗?
这是我尝试加载的视图:
self.form = Section()
<<< SegmentedRow<String>("segments"){
[=11=].options = ["Passées", "En cours", "Futures"]
[=11=].value = "En cours"
}
+++ Section(){
[=11=].tag = "past_s"
[=11=].hidden = "$segments != 'Passées'" // .Predicate(NSPredicate(format: "$segments != 'Sport'"))
}
for it in self.past {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
self.form +++= Section(){
[=11=].tag = "waiting_s"
[=11=].hidden = "$segments != 'En cours'"
}
for it in self.waiting {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
self.form +++= Section(){
[=11=].tag = "futur_s"
[=11=].hidden = "$segments != 'Futures'"
}
for it in self.future {
self.form.last! <<< TextRow() { row in
row.title = "Which is your favourite soccer player?"
}
}
这就是我在等的:)
self.form = Section()
<<< SegmentedRow<String>("segments"){
[=12=].options = ["Passées", "En cours", "Futures"]
[=12=].value = "En cours"
}
+++ Section(){
[=12=].tag = "past_s"
[=12=].hidden = "$segments != 'Passées'" // .Predicate(NSPredicate(format: "$segments != 'Sport'"))
}
<<< LabelRow() { row in
row.title = "1"
}
<<< LabelRow() { row in
row.title = "temp"
}
+++ Section(){
[=12=].tag = "waiting_s"
[=12=].hidden = "$segments != 'En cours'"
}
<<< LabelRow() { row in
row.title = "2"
}
<<< LabelRow() { row in
row.title = "temp"
}
+++ Section(){
[=12=].tag = "futur_s"
[=12=].hidden = "$segments != 'Futures'"
}
<<< LabelRow() { row in
row.title = "3"
}
<<< LabelRow() { row in
row.title = "temp"
}
我也试过了(还有很多其他方法):
form +++ Section()
form.last! <<< SegmentedRow<String>("segments"){
[=13=].options = ["Passées", "En cours", "Futures"]
[=13=].value = "En cours"
}
form +++= Section(){
[=13=].tag = "past_s"
[=13=].hidden = "$segments != 'Passées'"
}
for past in self.past {
form.last! <<< LabelRow() { row in
row.title = "1"
}
}
也试试这个:
form = Section()
<<< SegmentedRow<String>("segments"){
[=14=].options = ["Passées", "En cours", "Futures"]
[=14=].value = "En cours"
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
self.pastSection = Section("past_s") {
[=14=].tag = "past_s"
[=14=].hidden = "$segments != 'Passées'"
}
self.waitingSection = Section("waiting_s") {
[=14=].tag = "waiting_s"
[=14=].hidden = "$segments != 'En cours'"
}
self.futurSection = Section("futur_s") {
[=14=].tag = "futur_s"
[=14=].hidden = "$segments != 'Futures'"
}
for past in self.past {
self.pastSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
for waiting in self.waiting {
self.waitingSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
for futur in self.future {
self.futurSection!
<<< LabelRow() {
[=14=].title = "test"
}
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
但是我得到了这样的错误:
终于找到答案了!
form.delegate = nil
form.removeAll()
form +++= Section("DuplicateCounter") { row in row.tag = "DuplicateCounter" }
<<< SegmentedRow<String>("segments"){
[=10=].options = ["Passées", "En cours", "Futures"]
[=10=].value = "En cours"
}
self.pastSection = Section("past_s") {
[=10=].tag = "past_s"
[=10=].hidden = "$segments != 'Passées'"
}
self.waitingSection = Section("waiting_s") {
[=10=].tag = "waiting_s"
[=10=].hidden = "$segments != 'En cours'"
}
self.futurSection = Section("futur_s") {
[=10=].tag = "futur_s"
[=10=].hidden = "$segments != 'Futures'"
}
form +++ self.pastSection!
form +++ self.waitingSection!
form +++ self.futurSection!
for past in self.past {
self.pastSection!
<<< LabelRow("\(past.id)") {
[=10=].title = "test"
}
}
for waiting in self.waiting {
self.waitingSection!
<<< LabelRow("\(waiting.id)") {
[=10=].title = "test"
}
}
for futur in self.future {
self.futurSection!
<<< LabelRow("\(futur.id)") {
[=10=].title = "test"
}
}
我的方法是使用 Json 文件和循环条目 -->
do {
if let file = Bundle.main.url(forResource: "linhas_fretados", withExtension: "json") {
let data = try Data(contentsOf: file)
let json = JSON(data: data)
for (_,subJson):(String, JSON) in json {
let inserir_fretado = Linhas_Fretado(
linha: subJson["Linha"].stringValue,
hora_saida_sa: subJson["Campus Santo André Partida"].stringValue,
hora_saida_sbc: subJson["Campus São Bernardo Partida"].stringValue,
hora_saida_tmnl: subJson["Terminal Leste"].stringValue)
if(subJson["Campus Santo André Partida"] != ""){
self.Saida_SA.append(inserir_fretado)
}
if(subJson["Terminal Leste"] != ""){
self.Saida_TMNL.append(inserir_fretado)
}
if(subJson["Campus São Bernardo Partida"] != ""){
self.Saida_SBC.append(inserir_fretado)
}
}
} else {}
} catch {
print(error.localizedDescription)
}
let formulario = form
formulario +++ Section("Onde Voce está?:")
<<< SegmentedRow<String>("segments"){
[=10=].options = ["SA", "TERMINAL", "SBC"]
[=10=].value = "SA"
}
//#################### ONIBUS SAINDO DE SSANTOS ANDRE MANO #############
formulario +++ Section("Saindo de SA"){
[=10=].tag = "SA_s"
[=10=].hidden = "$segments != 'SA'"
}
var i = 0
while i <= (Saida_SA.count-1) {
form.sectionBy(tag: "SA_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_SA[i].linha)" ; [=10=].value = self.Saida_SA[i].hora_saida_sa ; [=10=].disabled = true }
i = i + 1
}
//#################### ONIBUS SAINDO DO TERMINALLLLOUAOOOASOASOA #############
formulario +++ Section(){
[=10=].tag = "TERMINAL_s"
[=10=].hidden = "$segments != 'TERMINAL'"
}
var a = 0
while a <= (Saida_SA.count-1) {
form.sectionBy(tag: "TERMINAL_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_TMNL[a].linha)" ; [=10=].value = self.Saida_TMNL[a].hora_saida_tmnl ; [=10=].disabled = true }
a = a + 1
}
//#################### ONIBUS SAINDO DE SAO BERNARDO DO CAMPO #############
formulario +++ Section(){
[=10=].tag = "SBC_s"
[=10=].hidden = "$segments != 'SBC'"
}
var i2 = 0
while i2 <= (Saida_SA.count-1) {
form.sectionBy(tag: "SBC_s")! <<< TextRow() { [=10=].title = "Linha \(self.Saida_SBC[i2].linha)" ; [=10=].value = self.Saida_SBC[i2].hora_saida_sbc ; [=10=].disabled = true }
i2 = i2 + 1
}
我浪费了很多时间来创建这个并在互联网上搜索,我没有找到其他类似的东西,所以我希望你喜欢兄弟。