Я разрабатываю приложение для iOS и хочу получить доступ к определенному значению в Словаре, используя Array()
.
Мой словарь содержит массив, который содержит структуры.
let array = [(key: "S", value: [Thunderbolt.repoStruct(repoName: "Semiak Repo", repoURL: "https://repo.semiak.dev", icon: Optional("iconRound"))]), (key: "T", value: [Thunderbolt.repoStruct(repoName: "Thunderbolt iOS Utilities", repoURL: "https://repo.thunderbolt.semiak.dev", icon: Optional("iconRound"))])]
Я делаю UITableView
с массивом: имя раздела - это значение key
, заголовок ячейки - это значение repoStruct.repoName
, и то же самое со следующими значениями.
Для доступа к repoNameЯ бы использовал Array(array)[0].1[0].repoName
.
Проблема в том, что я не знаю точное местоположение, к которому я хочу получить доступ, вместо этого я использую indexPath, чтобы узнать, какое значение мне нужно:
Array(array)[indexPath.section].indexPath.row[0].repoName
Это должно вернуть мне repoName ячейки, но вместо этого выдает следующую ошибку: Value of tuple type '(key: String, value: [repoStruct])' has no member 'indexPath'
Я также попытался использовать:
let row = indexPath.row
Array(array)[indexPath.section].row[0].repoName
, но выдает ту же ошибку:Value of tuple type '(key: String, value: [repoStruct])' has no member 'row'
Я не знаю, почему Array(array)[0].1
работает и возвращает мне значение, но Array(array)[indexPath.section].row
нет.Он делает то же самое: доступ к значению с использованием позиции, которая является целым числом, например indexPath.
Как я могу это сделать?
Заранее спасибо.