You Are Here:

Community: Wiki

This page was last modified on 27 September 2009, at 07:52.

Mobile Design Pattern: Live Scrolling

From Forum Nokia Wiki

Reviewer Approved   

Contents

Description

The Live Scrolling Design Pattern, also known as Continuous Scrolling or Infinite Scrolling, is a way of displaying and loading data in incremental manner, alternative to Pagination (Mobile Design Pattern: Paging).

With Live Scrolling, a first subset of data is initially loaded and shown to the user. Then, when the user reaches the bottom of this data, a new set of data is automatically loaded and displayed. So, there's no need of explicit user interaction to load the next available items, contrary to Pagination, where the user has to click on a button or link to go to another page.

When new items are loaded, they're appended to the items already displayed to the user, so giving him the impression of a never-ending page, contrary to Pagination, where only a subset of data is always visible to the user.

An example of Live Scrolling is visible in the Gmail mobile client:

Image:Livescrolling_designpattern.png

Advantages

  • User interaction is more intuitive and fast, since the user does not need to press any buttons to see the next available items
  • While a new set of data is loading, the user can continue to view and browse the data already displayed, so improving the overall user experience
  • All loaded data is visible to the user, not only the last loaded one

Disadvantages

  • User has typically no explicit information about the total number of items
  • User has no way to go directly to a specific set of data, but has to load all the items until the desired one

Use when

The Live Scrolling Design Pattern is useful when there is the need of loading and displaying large sets of data.

Use how

The typical implementation of this Design Pattern is structured as follows:

  • a first set of data is loaded
  • the user can freely scroll and view the loaded data
  • when the user reaches the bottom of this data, new data is automatically loaded in background
  • as soon as the new data is available, it is appended to the existing one

While a new set of data is loading in background, the user is free to continue reading and scrolling the already available items: so, it is important that the user interface remains usable

Alternative implementations use a button or link, placed at the bottom of the available data, to allow the user to explicitly ask for new items.
Image:Livescrolling_buttonexample.png
This approach gives to the user more control over the loading of data, but loses the intuitiveness of the automatic loading of data, typical of Live Scrolling. An example of this alternative approach is visible in the Facebook website:

Image:Livescrolling_loadbutton.png

Design Tips

  • Load relatively small sets of data for each step: this will increase loading speed, and give more responsiveness to applications
  • Give the user a clear indication when new data is loading, to avoid the impression of blocked user interface
  • If there is an error while loading the next set of data, it is good practice to automatically retry to load it, for a predefined number of times

Related Wiki Articles

No related wiki articles found

Rate This

 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZidentifierQSxhttpE3aE2fE2fwikiE2eforumE2enokiaE2ecomE2findeE78E2ephpE2fThemesE3aHomeE5fScreenX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfntypeZCommunityContentQ qdcZtypeQUqfntypeZE52esourceQ qdcZtypeQUqfntypeZWebpageQ qdcZtypeQUqfntypeZWikiContentQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qfnZtypeQUqfntypeZCommunityContentQ qfnZtypeQUqfntypeZE52esourceQ qfnZtypeQUqfntypeZWebpageQ qfnZtypeQUqfntypeZWikiContentQ qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfntypeZCommunityContentQ qrdfZtypeQUqfntypeZE52esourceQ qrdfZtypeQUqfntypeZWebpageQ qrdfZtypeQUqfntypeZWikiContentQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ