OK, this one is a puzzler. There is one similar post but it's not similar enough to count, so I'm posting this one. :)
I've got a grouped UITableView with a header and footer. The footer includes two UIButton views, side-by-side. Nothing major.
Now … there is a toggle button in a UIToolbar at the bottom for more/less info in this table view. So I build my index paths to delete/insert with fade row animation, all the usual ingredients, sandwiched between beginUpdates
and endUpdates
calls on the UITableView … and this works fine! In also happens that my footer can sometimes be pushed off past the bottom of the display.
Here's where it gets weird. If I drag my finger up the display, scrolling the view upward, I should see that footer eventually, right?
Well … most of the time I do. BUT, if I flick my finger up, for a faster scroll, the footer is missing. Even if you try to tap in that area - no response.
However, if I scroll back down again, just to hide that footer (or rather hide the area where the footer would normally be), and then scroll back up, it's there once again!
This only happens when inserting rows. If I delete rows, the footer stays put … unless of course it was already hidden and I didn't perform the aforementioned incantation to get it back. :)
I am trying to trace through this, but to no avail. I suppose tracing through scroll operations is a bit of a crazy proposition! Perhaps some creative logging … suggestions, anyone? Or is this a known issue in 3.1 where row insert/deletes are concerned? (I don't recall seeing it until 3.1.)