В fillArrays вы создаете другой контроллер представления, но вы никогда ничего не делаете с ним или его представлением, вы никогда не увидите это представление. Вы также никогда не вызовете viewDidAppear вручную, это происходит автоматически, когда отображается представление контроллеров представления (ТОЛЬКО в контексте контроллера навигации).
Обычно поток таков: вы создаете контроллер представления и либо добавляете это представление как subview текущего представления или отправьте его как новое окно с помощью контроллера навигации. Я почти уверен, что вся ваша проблема в том, что их таблица никогда не добавляется в представление, которое кто-либо действительно видит, поэтому таблица вызывает другие методы, но никогда не вызывает cellForRow, потому что ее код layoutSubviews просто не вызывается.
если вы устанавливаете делегат и источник данных в viewDidLoad, то это может быть источником вашей ошибки. Можете ли вы установить источник данных и делегировать в init?
Убедитесь, что делегат tableView и источник данных указывают на viewController
I cannot see anything wrong with the code as-is, have you verified with breakpoints that cellForRow is never reached (even though I see you have a log statement)?
Also I would try just for a sanity check to return "1" explicitly in rowsInSection, and hardcode a string in the cell you are returning in cellForRow.
If all else fails, create a new table view controller from the XCode templates and put your calls in there - then when that works, work backwards to why your code does not.
Also, it would be good to see your viewDidLoad setup code (add to answer above please).