Table display delayed sometimes

I have an iOS app (that is on the App Store) that builds a table from a SQLite DB. I have the code in the View ACTIVATE event to repopulate the table. I have an event in the Table ACTION event that does a PushTo a detail view of the item you just touched.

I do not have any code that attempts to determine if the table is populated with any data in the View ACTIVATE event and it repopulates from scratch every time. Maybe this should be in the View OPEN event. The list is about 210 rows.

The detail view generates the button in the upper left to return to the table view since it was called from the PushTo.

I have two users, who downloaded the app from the App Store, say that when they return from the detail view back to the table there is a delay where part of the table appears immediately (about half of the first screen) then the rest appears after some seconds (I am trying to get the actual length of the delay). They have an iPhone 6 Plus and an iPhone 6S. I have also requested the iOS version but I have not received that info yet either. One said she had the “latest” iOS but I don’t know if that is 9.2.

I have tested on my iPhone 6 (iOS V9.1) and on my iPad mini (iOS V8.4) and both work correctly. I updated my iPad mini to 9.2 and it still works OK.

I wonder if they both have lots of “open” apps in the background that are taking up RAM. I generally clean up my running apps from time to time. I did try on my iPad mini to open up lots of apps, including some big ones like Keynote, and everything seems to work normally.

Should the table populate be in the View OPEN event?

Any other thoughts?


I also have an app that uses iOSTables which is in the App Store. Have you considered using the iOSTableDataSource interface? Doing it this way you don’t load up the table in either the View open or activate methods. Instead your view provides methods that supply table data on demand. Some of my users have tables with a few thousand rows, with thumbnail images that are downloaded from web services (and cached), and in my testing with their data the app is very responsive using the interface method.

Try populating the table in the tables’s OPEN event. This event is fired before the View’s ACTIVATE or OPEN events.