1

I am developing an iOS app which has Firestore/Firebase as its backend datastore. Firebase provides live data change notification. Should I listen to those and update the tableview cell content dynamically or should I implement pull to refresh so that user can fetch latest posts? When user changes tab, I can fetch the latest one? The table view lists some posts contents as card UI with one latest comment at the bottom.

My concern is that when a user reads a content, or a comment, and it gets edited or say deleted, the post will disappear on tableview reload, which might cause a bit of concern?

Which feature is provides the best user experience?

4

You should give the user control over refreshing the data, give them a notification that new data is available (or that data has changed) and tell them that they can refresh the view by pulling.

You already mentioned the big con of updating it without user interaction.

But, as always, it depends on the use-case. If you have data that changes every 2-3 seconds, then it will get pretty annoying for the user to reload by themself. In this case you should update automatically but provide enough information (what has been changed, etc.)

1

Changing the layout of your content area while the user is reading something would drastically downgrade the user experience. I would say that a manual reload is mandatory, either by pulling to refresh or clicking on a button, depending on how you are implementing your application.

For example in my experience, a pull to refresh is tedious in applications where I have scrolled down a fair bit, so I tend to reload the page through other means. You could always give the user the option to be able to refresh the content of your screen using both ways.

Also, depending on the rate of new content addition, you could add an indicator somewhere, notifying how many new posts have been added. I would imagine that clicking on that notification will reload the page and display the new content, although this does not work well with content editing, but only with new content.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.