Этот код читается из json-файла и возвращает значение «name» во всех ячейках, это нормально работает, но когда я выбираю значение, которое он продолжает возвращать, я хочу получить стоимость. Я пробовал другие решения в других вопросах, потому что они находятся в Objective C, и это быстро, я пробовал, хотя и не работал вообще. Все, что мне нужно - это значение внутри ячейки. Также я хочу передать значение «id», а это данные [«id»] выбранной ячейки, это возможно.Столбец таблицы возвращает нуль при выборе в swift
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("ImageCell", forIndexPath: indexPath) as UITableViewCell //1
let data = datas[indexPath.row]
if let captionLabel = cell.viewWithTag(100) as? UILabel {
if let caption = data["name"].string{
captionLabel.text = caption
}
}
return cell
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let indexPath = self.tableView.indexPathForSelectedRow();
let currentCell = self.tableView.cellForRowAtIndexPath(indexPath!) as UITableViewCell!;
println(currentCell.textLabel!.text)
self.viewofloc.hidden = true
}
Похоже, что вид с тегом 100 не совпадает с 'textLabel'. – dasdom
Я бы использовал тег 1000 и выше, так как теги ниже, которые могут использоваться яблоком, не зная его также в вашем методе didSelect, который у вас уже есть выбранный 'indexPath', переданный в метод, поэтому просто используйте его для получения' UITableViewCell' – darren102
@dasdom text label имеет тег 100 – MasterWizard