如何自定义FLEX3的loading进度条

第一种:修改下载进度的文字为中文

建立扩展至 mx.preloaders.DownloadProgressBar 的一个类:

  1. package myDownPro
  2. {
  3. import mx.preloaders.DownloadProgressBar;

  4. public class myDownProBar extends DownloadProgressBar
  5. {
  6.    public function myDownProBar()
  7.    {
  8.     //TODO: implement function
  9.     super();
  10.     downloadingLabel="正在下载中...";
  11.     initializingLabel="正在初始化内容...";
  12.    }
  13. }
  14. }
复制代码

然后在修改 preloader 为你建立的这个类:

  1. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"   preloader="myDownPro.myDownProBar" layout="absolute">
  2. <mx:Text text="程序进度条测试" x="37" y="71"/>
  3. </mx:Application>
复制代码

第二种:覆写 DownloadProgressBar 类的 preloader,可以在其中加入你自已喜欢的标签或者图像

  1. package myDownPro
  2. {
  3. import mx.preloaders.DownloadProgressBar;
  4. import flash.display.Sprite;
  5. import flash.events.ProgressEvent
  6. import flash.events.*

  7. import flash.text.TextField;
  8. import mx.events.*;
  9. public class myDownProBar2 extends DownloadProgressBar
  10. {
  11.    public var msg:TextField
  12.    public function myDownProBar2()
  13.    {
  14.     super();  
  15.     msg=new TextField()
  16.     msg.x=200
  17.     msg.y=200
  18.    addChild(msg)
  19.    }
  20.    override public function set preloader(s:Sprite):void{
  21.    s.addEventListener(ProgressEvent.PROGRESS,prog)
  22.    s.addEventListener(Event.COMPLETE,ecom)
  23.    s.addEventListener(FlexEvent.INIT_COMPLETE,flInC)
  24. s.addEventListener(FlexEvent.INIT_PROGRESS,flIn)
  25.    }
  26. private function prog(e:ProgressEvent):void{
  27. msg.text=String(int(e.bytesLoaded/e.bytesTotal*100))+" %";
  28. }
  29. private function ecom(e:Event):void{
  30. msg.text="完成了!!!!"
  31. }
  32. private function flInC(e:FlexEvent):void{
  33. msg.text="初始化完毕!"//初始完后要派遣 Complete 事件,不然会停在这里,不会进入程序画面的
  34. dispatchEvent(new Event(Event.COMPLETE))
  35. }
  36. private function flIn(e:FlexEvent):void{
  37. msg.text="开始初始化程序"
  38. }
  39. }
  40. }
复制代码

同样修改<mx:Application>标签的 preloader 为这个类。

你可能感兴趣的:(Flash,Adobe)