1

我正在从服务器异步下载库。在它的 Directory_Listing 处理程序中,我正在更新状态栏。但是更新的状态栏没有呈现。下面是处理程序的代码。

    private function fetchAllFilesFromDirectory(f:File):void
    {
        var list:Array=f.getDirectoryListing();
        Application.application.status = "Downloading Local Library..."+list.length+"% Loaded";
    }

谁能告诉我一个解决方案。

提前致谢。

4

1 回答 1

3

您正在使用getDirectoryListing()而不是使用名为getDirectoryListingAsync(). Adobe 网站上的示例显示了如何使用它。

import flash.filesystem.File;
import flash.events.FileListEvent;

var directory:File = File.userDirectory;
directory.addEventListener(FileListEvent.DIRECTORY_LISTING, directoryListingHandler);
directory.getDirectoryListingAsync();

function directoryListingHandler(event:FileListEvent):void {
    var list:Array = event.files;
    for (var i:uint = 0; i < list.length; i++) {
        trace(list[i].nativePath);
    }
}

请注意,即使这样也不会让您显示进度条,因为您将在一个回调中获得整个响应。您可以改用微调器,这表明应用程序正在等待响应。触发回调后,关闭动画并显示结果。

于 2013-07-23T13:13:41.927 回答