Adam Johns
Adam Johns

Reputation: 36343

Stick UITableView header view to top when creating header in storyboard

I have created a table view header using the answer here.

My problem is that when creating the header this way, it does not "stick" to the top of my UITableView when scrolling down. If I create my header in code inside of viewForHeader then it does stick.

How can I get my header to stick to the top while scrolling if I create it in storyboard? 2 other askers here and here asked this question and never got an answer.

And yes my UITableView is already plain style, not grouped.

Upvotes: 5

Views: 5696

Answers (2)

Vitya Shurapov
Vitya Shurapov

Reputation: 2308

Just drag tableview cell first, then your view for the header above. And afterward, remove the unneeded cell. The header will remember its position.

Upvotes: 1

Adam Johns
Adam Johns

Reputation: 36343

rdelmar's comment helped me understand the reasoning behind it not working. Here is what I did in practice to fix the problem:

I had to drag the header view in storyboard down by where the first responder is. You'll notice you can't actually drag the header view down on the view itself, you'll have to drag the element down from the document outline.

I also had to implement viewForHeaderInSection (returning the header view that I made an outlet) and heightForHeaderInSection.

Every time you want to edit the view via storyboard, you'll have to drag it back up to edit it, then drag it back down so it works correctly.

Upvotes: 6

Related Questions