Два способа сделать это: либо сделать так, как вы предлагаете, создать «ячейку без результатов» и иметь состояние в вашем tableViewController, равное BOOL resultIsEmpty = YES.В cellForRowAtIndexPath вы сначала проверяете эту пустую BOOL и возвращаете только пустую ячейку, не забывайте также проверять в numberOfRowsInSection, чтобы вы могли возвращать 1 в случае пустого (в противном случае он, вероятно, вернет длину вашего модельного массива, который, конечно,0).
Другой способ - сделать вкладку в табличном представлении и разместить там свою метку.Это может быть сделано, потому что UITableView является подклассом UIScrollView.
self.tableView.contentInset = UIEdgeInsetsMake(heighOfNoResultLabel, 0, 0, 0);
Затем в "resultsDidLoad" или как называется ваш делегат для новых данных, вы проверяете, равен ли он 0, вставляете tableView и помещаетеярлык там.Если это не 0, установите для вставки значение
self.tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);
все 0.Вы можете анимировать это свойство, чтобы при отсутствии результатов табличное представление «прокручивалось» вниз, чтобы отобразить метку «Нет результатов».
Бот-решения действительны, я бы сказал, примерно с тем же объемом кода.,Разница, вероятно, в том, что вы можете сделать с этим потом.