Доступ к методам TableView из TableViewCell


#1

Всем привет, подскажите как вызвать какие либо методы таблицы изнутри ячейки, а конкретно метод reloadData, я хочу что б по тапу на ячейку у меня менялось колличество строк лейбла внутри этой ячейки и сама ячейка расширялась


#2

Немного не так вы это понимаете. Посмотрите тут


На эту тему много статей и видео, нужно лишь поискать.


#3

Но такой способ как у меня тоже работает, но ячейка расширяется только если уходит за края экрана и обратно, когда у меня отрабатывает релоадДата, разве никак ее нельзя вызвать при нажатии?


#4

Можно, но это не правильно.


#5

Можете пожалуйста сказать как?)


#6

Я же выше ссылку скинул.


#7

в смысле как вызвать reloadData()?


#8

Посредством делегата.


#9

UITableViewDelegate?


#10

Нет. Через свой делегат, который нужно написать.


#11

Можете помочь пожалуйста? Сколько не пытаюсь по туториалам, ничего не получается


#12

Тут пример делегата


Тут еще


#13

Посмотрите это


#14

Изнутри пишите:

let tableView = superview as? UITableView
tableView?.reloadData()

Меньше iOS 11:

let tableView = superview?.superview as? UITableView
tableView?.reloadData()

Или вместе:

let tableView = superview as? UITableView ?? superview?.superview as? UITableView
tableView?.reloadData()