![]() |
Работа с массивом
В общем вопрос в чем, нужно по ранее пропсанному закону сортировать массив, например как, последний эллемент поставить на первое место а все оставшиеся сместятся и предпоследний станет последним, это в одну сторону, а в другую чтобы первый елемент становился на последнее место и аналогичным образом все сортировалось как и в первом примере.
Еще Вопрос, когда мы програмным образом переносим елемент массива с одного места на другой его же удалять с предыдущего места ненужно? В общем я пропишу функцию по каторой будет определяться, как и в какой момент пересортировывать массив, я просто хочю как можно грамотрее прописать, прошу помочь мне разобраться как это сделать. Спасибо! |
Посмотрите справку по массивам.
|
Ну да я обязательно это все просмотрю, все по потребности, встретился с проблемой разберись в корне, это все понятно, спасибо за ссыль. Мне прост осрочно нужно, читать разбираться на этой неделе у меня просто нет времени, поэтому прошу дать талчек, я бы просто понял какое поле иследовать в массивах, а современенм просто детально изучю все...
|
На неделе? ) Да у вас менее пары часов уйдет на изучение.
Все достаточно просто, смотрите: push(... args):uint Добавляет один или несколько элементов в конец массива и возвращает новую длину массива. unshift(... args):uint Добавляет один или несколько элементов в начало массива и возвращает новую длину массива. pop():* Удаляет последний элемент из массива и возвращает значение этого элемента. shift():* Удаляет первый элемент из массива и возвращает этот элемент. Комбинируя, можно получить что-то вроде: Код AS3:
|
Цитата:
Спасибо! Если есть у когото конкретные идеи или вопроссы, буду рад увидеть в этой теме) Добавлено через 41 минуту В таком случае решил задать вопросс поконкретнее. Ниже есть тема по созданию галереи. Вот встретившись с рядом проблем, решил создать тему отдельную про массивы, заодно изучить поглубже этот вопрос. Что, хочю сделать, алгаритм таков: Отследить координаты первой картинки в массиве, если они привешают половины его ширины по ИКСУ, тогда на первый элемент массвива переноситься последний элемент, а первый уже становиться вторым и возвращаем новую длину, ну и так долее до бесконечности. Также с другой стороны, если последний елемент массива имеет координаты меньшечем длины флешки минус половина ширины картинки, значит уже первый элемент становиться последним, а последний предпоследним и т.д. Вопросс в чем, подайдет ли такой алгоритм или как можно отследить другими способами или как лучше былобы отследить... Просто так сказать совет. Спасибо |
Возможно вам достаточно будет менять порядок отображения без «сортировки» массива.
С помощью setChildIndex. А отдельные вопросы лучше оформлять в новой теме ;) |
Я сделал так: Описание: Если первая картинка превышает изночальные координаты по X тогда последняя картинка становиться за ней и она же становиться первым элементом массива так как первый элемент становиться вторым после него. Второй аргумент обратный т.е. если же последняя картинкаи имеет координату X меньше чем длина флешки минус половина её ширины т.е. если бы она была вся видна но не более того. тогда происходит обратный проццес
Код AS3:
В таком случае прокрутка картинок движеться бесконечно в любом направлении, спасибо!))) |
| Часовой пояс GMT +4, время: 16:12. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.