Lots of evangelist Android developers dislike the Pull-to-Refresh pattern on Android. For instance Cyril Mottier wrote a whole blog post detailing his views and it’s well worth a read. The trouble with his arguments (in my opinion) is that he’s far too ‘pure’ in his views on using patterns from other platforms. For me, getting something which works well and people can use is more important than keeping to Google’s Pure Android guidelines.
*Just to clarify, Cyril is obviously a very clever guy and you’d be a fool not to value his views. I just don’t agree with him on this one point
The main argument against using Pull-to-Refresh on Android is that it’s not discoverable as we don’t have an overscroll bounce like iOS does. I totally agree with this point so today I’ve quickly added something in to my Pull-to-Refresh library to help make it more discoverable, a small indicator graphic at the top/bottom that shows when a pull is available:
Now it’s obviously not as elegant as iOS’ bounce but it does work and isn’t too intrusive. At the moment I’m testing it but the code has been optimised and is usable as-is (it’s in the dev branch if you want the code). FYI, the graphic is something I knocked up quickly so will probably change when I get some time to improve it.
If you’d like to test this, I’ve built a new version of the sample app for download here: http://bit.ly/Lou5lv (the GridView sample has the Andy custom drawable).
EDIT: This has now been released into v1.3.0. See here: https://github.com/chrisbanes/Android-PullToRefresh
Let me know what you think!