![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2009
Сообщений: 122
|
здравствуйте.
есть две кнопки и мувик. при нажатии на первую кнопку, мувик должен сдвинуться 200 пикслелей влево и на второй соответствнно вправо. движение должно плавно начаться и плавно кончиться. примерно за две секунды. вроде не сложно, но почему то не получается. надеюсь на вашу помощ. |
|
|||||
|
Модрон-ветеринар
|
Что конкретно не получается?
Приведите код.
__________________
Идите первым! |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 122
|
я вообще не знаю как реализовать это. я могу реализовать простое перемещение с setInterval, например, но плавность я сделать не могу.
|
|
|||||
|
Модрон-ветеринар
|
Проще всего - с помощью класса Tween.
См. пример. Если я неверно понял насчет пределов движения - думаю что разберетесь в синтаксисе и легко поправите. Залезайте в хелп, найдете там виды движения - замедления/ускорения, бонусные движения, имитации эластичной остановки и т.д. А вообще, если делать "в лоб", с помощю того же setInterval, нужно просто ввести множитель для величины одного шага, и с каждым вызовом функции для движения изменять этот множитель в ту или иную сторону. В дальнейшем советую перейти с адобовского Tween, например, на TweenLite от Greensock. Он более производителен и гибче. Да и нужный тип движения легко подобрать прямо у них на сайте в демо-примере. А вот сам код и пример ниже import mx.transitions.Tween; var x0:Number = mc._x ; btn_left.onRelease = function() { mc.tween.stop(); mc.tween = new Tween(mc, '_x', mx.transitions.easing.Strong.easeInOut, mc._x, x0 - 200, 2, true); }; btn_right.onRelease = function() { mc.tween.stop(); mc.tween = new Tween(mc, '_x', mx.transitions.easing.Strong.easeInOut, mc._x, x0 + 200, 2, true); };
__________________
Идите первым! Последний раз редактировалось mooncar; 10.03.2011 в 00:57. |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 122
|
да, это то что нужно. немного изменил, чтобы нельзя было нажать во время движения и чтобы можно было его двигать более одного раза и получилось именно как мне и нужно было. огромное спасибо за вашу помощь.
|
|
|||||
|
Модрон-ветеринар
|
Пожалуйста. Для "спасиб" - кнопочка с весами
![]() Так и у меня можно двигать более одного раза. Разве нет? Или "более одного раза" - это в какую-то сторону более одного раза? А почему нельзя нажимать во время движения? Последний вопрос - простое любопытство
__________________
Идите первым! |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 122
|
кнопочка с весами нажата.
![]() более одного раза это в одну сторону, да. а нажать во время движения нельзя, потому что это сайт, раздел новостей. при нажатии на правую/левую кнопку выбираются новости. новость посередине отображается крупно выше этой полоски. нажимать два раза просто не нужно и выглядит некрасиво. думаю понятно обьяснаю. ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:58. |
|
|
« Предыдущая тема | Следующая тема » |
|
|