To pull or not to pull – when to use refresh
Written by David Mytton — Subscribe now.
One of the internal discussions we had with our new iOS app was whether to use the classic pull to refresh action on our list views. These list views are used to list all your devices and services for the server and website monitoring. So in v3.0, they were the focus of significant improvements mostly through reimplementation as a native app but also through adding features like search and indexes to make it easy to jump to specific items.
Refreshing the list happens automatically every 60 seconds but we also wanted to give the user the ability to do it manually, so we discussed the situation:
- You’re refreshing the list because you want to see one of a few things – a new device or service, whether the items you currently have in view have checked in recently (we show the last checkin time), the alert count for an item and for services, their up/down status and response time.
- You may be at the top of the list but since items are ordered alphabetically, you’re more likely to be somewhere down the list. As such, if you refresh you want items to update “in place” i.e. where you are now, not by starting from the top.
- So you want to see a refresh button all the time and it should reload the current view (and things out of view in the background).
The pull to refresh concept works well for items in chronological order because it’s as if you’re pulling down the list to reveal more items above (in the correct order). Whilst this is an established method for refreshing on iOS, it doesn’t make sense for non-chronological ordered items.
And so we decided to put a refresh button in the top right corner.