2015-04-28 3 views
0

У меня есть панель поиска, которая будет искать из массива имен, но массив имен не указан на экране. Когда пользователь ищет, мне нужно, чтобы высота моего представления таблицы устанавливалась на основе того, сколько результатов было возвращено.Результаты поиска в UITableView Swift

Мои функции поиска работают, я просто хочу, чтобы представление таблицы результатов отображалось только в том случае, если есть результаты.

Я думал где-то в этой функции, я мог бы установить высоту стола, но нашел только что-то для установки высоты его строк.

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    // Return the number of rows in the section. 
     tableView.rowHeight = 50.0 
     return results.count 
} 
+0

Либо возьмите ссылку таблицы в классе и скройте и покажите табличное представление, основанное на подсчете массива данных i.e. проще всего и убедитесь, что вы разместили tableview поверх всех других элементов управления, кроме строки поиска. –

ответ

0
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    if results.count 
     tableView.hidden = false 
    else 
     tableView.hidden = true 

    return results.count 
} 

Возможно, возникла некоторая опечатка, но вы можете использовать эту логику, я использовал много раз. при каждой перезагрузке таблицы источник данных таблицы будет подсчитывать, есть ли какие-либо записи в массиве или нет. Если записи затем показывают tableview, если нет, тогда скройте. вы можете добавить приятную анимацию с альфа от 0 до 1 или от 1 до 0. и если вы взяли ссылку на tableview by IBOutlet, используйте это имя таблицы.

0

Не существует функции для установки высоты стола.

Если вы используете AutoLayout, вам необходимо установить ограничение по высоте и изменить его по мере необходимости.

Если вы не используете AutoLayout, вы меняете рамку tavleview, чтобы изменить ее высоту.

+0

Не похоже, что есть способ открыть результаты поиска в табличном представлении, затем ...? – user3399235

+0

Вы можете открыть результаты, но вам нужно управлять ими самостоятельно. Для вас ничего не создано. – pteofil

Смежные вопросы