Я работаю над учебным пособием UITableView
, и мне стало любопытно, как использовать итерацию массива при реализации методов UITableViewDataSource
. Когда мы вызываем indexPath.row
, это вызывает цикл for для нас за кулисами? Я спрашиваю, потому что месяцы назад, когда я учился использовать данные из веб-службы (я забыл точные шаги, как я это сделал точно), но я считаю, что мне нужно было перебрать массив, чтобы представить информацию в консоль.
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// Create an instance of UITableViewCell, with default appearance
let cell = UITableViewCell.init(style: .value1, reuseIdentifier: "UITableViewCell")
// Set the text on the cell with the description of the item instance that is at the nth index of the allItems array, where n = row this cell will appear in on the tableview
let item = itemStore.allItems[indexPath.row]
cell.textLabel?.text = item.name
cell.detailTextLabel?.text = "$\(item.valueInDollars)"
return cell
}
Правильно ли я считаю, что метод indexPath.row
выполняет итерацию по массиву для нас за кулисами?
let item = itemStore.allItems[indexPath.row]