не удалось показать файл из массива - PullRequest
0 голосов
/ 13 января 2011

Я пытаюсь сделать галерею изображений.Первоначально я не смог отобразить миниатюры, хранящиеся в массиве.вместо этого он продолжает показывать одни и те же миниатюры.с этим решением я сталкиваюсь с другой проблемой .. я продолжаю получать ошибку Ошибка # 2044: необработанная ошибка ioEr :.text = Ошибка № 2124: загруженный файл неизвестного типа.когда я нажимаю на миниатюру, чтобы загрузить файл .txt.

hw, могу ли я дать команду предварительному загрузчику отслеживать ход загрузки?

 public function loadImage(filename:String):void
        {
            // show the preloader
            preloader.visible = true;

    // set the source to the UILoader to the full size image to load and display

            addChild(preloader);

            // command the preloader to track the progress of the download
            var loadWindow:UILoader;    
        preloader.trackLoading("LOADING: " + (loader*100).toFixed(0) + "%");


        }

Ответы [ 2 ]

1 голос
/ 13 января 2011

Это довольно очевидно на самом деле.Вы постоянно перезаписываете одну и ту же переменную.

thumbs.textFile = "text / picture1.txt";

thumbs.textFile = "text / picture2.txt";// 1-е значение потеряно

thumbs.textFile = "text / picture3.txt";// 2-е значение потеряно

... и т. Д.

Так что здесь вы будете продолжать добавлять последнее, то есть седьмое изображение в каждой итерации цикла.

ищите правильный ответ weltraumpirat .


Также вам не нужно размещать файлы с именами Image_1, Image_2, Image_3 ....

Если бы они уже были организованы как таковые, вы могли бы на самом деле обойтись без всех этих массивов.Я не знаю, насколько эффективно или лучше это было бы, но ради времени я честно поспешил бы найти решение, подобное следующему:

 for (var i:int = 0; i <7; i++) 
    {
        var thumbs:MyUIThumbnail = new MyUIThumbnail();    
        thumbs.y = 43 * i;    
        thumbs.image         = "images/image" +i +".jpg";
        thumbs.textFile      = "text/picture" +i +".txt";
        thumbs.imageFullSize =  full_image_mc;
        thumbs.infoText      =  info;
        thumbs.loadThumbnail("images/image"+i+"_thumb.jpg");    
        addChild(thumbs);
    }
0 голосов
/ 13 января 2011

Вы неправильно обращаетесь к массивам.Посмотрите на оператора [] .

for (var i:int = 0; i <7; i++) {
    var thumbs:MyUIThumbnail = new MyUIThumbnail();

    thumbs.y = 43 * i;

    thumbs.image = images[i];
    thumbs.textFile = textFiles[i];
    thumbs.imageFullSize = full_image_mc;
    thumbs.infoText = info;
    thumbs.loadThumbnail(thumbnails[i]);

    addChild(thumbs);
}
...