2016-08-19 2 views
1

Я использую UITableView с обычаем tableHeaderViewtableHeaderView не правильно изменить размер

В моих viewDidLayoutSubviews я использую исправный такой код:

let bounds = UIScreen.mainScreen().bounds 

    imageSliderVC.view.frame = CGRectMake(0, 0, bounds.width, bounds.width) 
    layerView.frame = CGRectMake(0, 0, bounds.width, bounds.width) 

    noButton = constructNopeButton() 
    yesButton = constructLikedButton() 
    buttonOptionsApply() 

    nameLbl.frame = CGRectMake(20, layerView.frame.maxY + 20, bounds.width-40, 20) 
    nameLbl.makeNameLabelFormat() 
    hashtagLbl.frame = CGRectMake(20, nameLbl.frame.maxY + 5, bounds.width-40, layerView.frame.width/3.66) 
    hashtagLbl.makeHashtagFormat() 

    seperatorLbl.frame = CGRectMake(20, hashtagLbl.frame.maxY + 15, bounds.width-40, 1) 

    groupsLbl.frame = CGRectMake(20, seperatorLbl.frame.maxY + 15, 30, 20) 
    groupsLbl.makeNameLabelFormat() 
    groupsLbl.sizeToFit() 
    groupsCountLbl.frame = CGRectMake(groupsLbl.frame.maxX + 5, seperatorLbl.frame.maxY + 15 , 40, 20) 
    groupsCountLbl.sizeToFit() 

    headerView.frame = CGRectMake(0, 0, bounds.width, groupsCountLbl.frame.maxY) 
    table.tableHeaderView = headerView 

Без использования headerView все прекрасно совмещается. таблица используется с autoLayout - привязка стола ко всем краям.

Любая идея, почему это происходит? попытался использовать

 headerView.translatesAutoresizingMaskIntoConstraints = false 

он выравнивает все, что находится слева от верхнего края.

редактировать: Представления устанавливаются как они помещаются в раскадровке

EDIT2: Скриншоты

он должен выглядеть следующим образом:

enter image description here

Это то, на что похоже

enter image description here

+0

Что такое выход? показать скриншот. – Santosh

+0

Можете ли вы опубликовать свой метод поиска для HeaderInSection? –

+0

Я не использовал этот метод. Я посмотрю на это. Как он должен выглядеть в моем примере? – JVS

ответ

0

Вы можете установить представление таблицы в режиме UITableViewDelegate tableView:heightForHeaderInSection:. И, конечно же, используйте NSLayoutConstraint для поиска элементов (good tutorial).

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