Home arrow Flash arrow Page 4 - Building Preloaders
FLASH

Building Preloaders


A preloader prevents a Flash movie from playing back until the movie can stream properly. Without a preloader, you may find that your movie tries to play frames that haven't been loaded yet, leading to unacceptable playback behavior. This article explains how to build a preloader. It is excerpted from chapter 20 of the Flash 8 Cookbook, written by Joey Lott (O'Reilly, 2006; ISBN: 0596102402). Copyright © 2006 O'Reilly Media, Inc. All rights reserved. Used with permission from the publisher. Available from booksellers or direct from O'Reilly Media.

Author Info:
By: O'Reilly Media
Rating: 5 stars5 stars5 stars5 stars5 stars / 16
February 22, 2007
TABLE OF CONTENTS:
  1. · Building Preloaders
  2. · 20.1 Determining How a Movie Will Download
  3. · 20.2 Building a Simple Preloader
  4. · 20.3 Building a Preloader that Displays Load Percentage
  5. · 20.4 Using a Progress Bar to Create a Graphical Preloader
  6. · 20.5 Creating Preloaders for Files with Exported Symbols
  7. · 20.6 Creating Preloaders for Files with Components

print this article
SEARCH DEVARTICLES

TOOLS YOU CAN USE

advertisement
Building Preloaders - 20.3 Building a Preloader that Displays Load Percentage
(Page 4 of 7 )

Problem

You want to build a preloader that continually updates a display of the percent loaded.

Solution

Divide getBytesLoaded( ) by getBytesTotal( ), multiply the output by 100, and use a dynamic text field to display the output.

Discussion

The basic preloader script discussed in the previous recipe serves as the foundation for this preloader script. With the preceding script, nothing happens until the movie is fully downloaded, at which time the if statement checking load status evaluates to true, a play( ) action is executed, and the preloader movie clip is removed.

In this variation of the script, I’ve added a line of code (shown in boldface) that outputs the percent that has loaded to a dynamic text field on the stage:

  stop();
  var nPreloaderInterval:Number = setInterval(this, "checkPreloader", 100);

  function checkPreloader():Void {
    var nLoadedBytes:Number = this.getBytesLoaded();
    var nTotalBytes:Number = this.getBytesTotal();
    tProgress.text = Math.round(nLoadedBytes / nTotalBytes * 100) + "% downloaded";
   
if(nLoadedBytes >= nTotalBytes) {
      clearInterval(nPreloaderInterval);
      play();
    }
  }

In addition to adding the script, you need to add the dynamic text field to the stage in frame 1. Create a dynamic text field, and give it an instance name oftProgress.

See Also

Recipe 8.2, Recipe 20.2


blog comments powered by Disqus
FLASH ARTICLES

- More Top Flash Game Tutorials
- Top Flash Game Tutorials
- Best Flash Photo Gallery Tutorials
- The Top Flash Tutorials for Menus
- 7 Great Flash Tutorials
- Adobe Creative Suite 5.5 Now Available
- Critical Flash Vulnerability Heats Up the Web
- More on Nonpersistent Client-Side Remote Sha...
- Nonpersistent Client-Side Remote Shared Obje...
- Using the Decorator Pattern for a Real Web S...
- Using Concrete Decorator Classes
- Delving More Deeply into the Decorator Patte...
- The Decorator Pattern in Action
- A Simple Decorator Pattern Example
- Decorator Pattern

Dev Articles Forums 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Weekly Newsletter
 
Developer Updates  
Free Website Content 
Contact Us 
Site Map 
Privacy Policy 
Support 



© 2003-2012 by Developer Shed. All rights reserved. DS Cluster 9 - Follow our Sitemap
Popular Web Development Topics
All Web Development Tutorials