Я довольно новичок в SwiftUI, но пытаюсь отобразить текст из двух циклов ForEach. Я работаю над приложением песни, которое будет отображать текст в строфах. Мои данные - это один массив Lyrics, содержащий стихи, который является другим массивом. Каждый стих - это строфа. И у каждого стиха есть строковый массив, в котором хранится текст одной строки.
// Переменная Lyrics
@Published var lyrics: [Verse]? = [Verse]()
// Структура стиха, хранящая каждую строку
struct Verse: Codable, Identifiable {
let id = UUID()
let verseContent: [String]
}
У меня возникла проблема с реализацией получения всей информации в текст в моем представлении. Один ForEach l oop работает, и я могу получить первую строку каждой из моих строф следующим образом
// Создает Fine с этим кодом
ForEach(lyrics) { verse in
Text(verse.verseContent[0])
}
Но проблема заключается в том, когда я пытаюсь и сделайте вложенный ForEach, чтобы получить все строки в каждом разделе со следующим.
return AnyView(
ForEach(lyrics) { verse in
ForEach(verse.verseContent { line in
Text(line)
)
}
)
Когда я пытаюсь это сделать, я получаю следующую ошибку. Явно укажите аргументы generi c для решения этой проблемы. Generi c параметр 'ID' не может быть выведен
Ссылка на инициализатор 'init (_: content :)' в 'ForEach' требует, чтобы 'String' соответствовал 'Identifiable'