Revision as of 21:34, 2 October 2007 by hartti (Talk | contribs)

Archived:How to make a battery indicator in Flash Lite

From Nokia Developer Wiki
Jump to: navigation, search

Compatibility: Flash Lite: 1.1, 2.x


Creating the battery indicator

  • Create a new movie clip
  • In this movie clip create at least 2 layers:
    • ActionScript: In this layer create as many keyframes as levels you want to display. (we will choose 8 levels in this example)
    • Level: In the first frame, create a level bar corresponding to the lowest level.
      In last frame create a keyframe and stretch your level bar to the highest level.
      Then add a motion tween.
    • Background: You can add a layer to put all your static components.
    • Your timeline will be like this: Timeline battery.jpg
  • In the first keyframe of the ActionScript layer add this code:
batMax = fscommand2("GetMaxBatteryLevel");
batLevel = fscommand2("GetBatteryLevel");
batSource = fscommand2("GetPowerSource");
batLevel2 = Math.ceil(batLevel*levelsNumber/batMax);
if (batSource == 0) { //If charger is not plugged
/* If charger is plugged, it will go to nextframe,
so the battery indicator will be animated.*/
  • In all other keyframes add this code:
  • Put this movie clip into your scene.

Adding a percentage indicator

If you want to add a text indicator:

  • Create a new layer and add a dynamic text.
  • Fill the var field to link it to a variable (assuming batText in this example)
  • Add this code in the first keyframe of the ActionScript layer, just before the if statement:
batText = "Battery Level: " add math.ceil(batLevel*100/batMax) add "%";

Flash Lite 2.x recommended improvements

  • call(1): This action was deprecated in favor of the function statement.
  • [...]Level: " add Math.c[...]: Macromedia recommends that you use the + operator.


You can download an example with source code here:
Battery Indicator 240*320 (swf + fla)
Example battery.jpg

78 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.


Thank you!

We appreciate your feedback.