2015-02-06 4 views
0

Я хотел бы сделать анимацию, которая перемещает изображение с начала экрана до конца и каждый раз рандомизирует положение x. Как я мог это сделать?Android-анимация просмотра изображений, движущихся и вращающихся

<set xmlns:android="http://schemas.android.com/apk/res/android" 
android:interpolator="@android:anim/linear_interpolator" > 

<rotate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromDegrees="0" 
    android:toDegrees="359" 
    android:pivotX="50%" 
    android:pivotY="50%" 
    android:duration="1000" 
    android:repeatCount="infinite" 
    /> 
<translate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromXDelta="0%" 
    android:fromYDelta="0%" 
    android:toYDelta="100%" 
    android:repeatCount="infinite" 
    android:duration="3000" 
    ></translate> 
    </set> 

Я не знаю, как рандомизации координату Х, а также почему, даже если я использовал 0% и 100%, то на самом деле не начать с самого начала экрана и не заканчивается на конец. Спасибо за любую помощь заранее!

ответ

2

Чтобы анимация начиналась с самой верхней части (по оси Y) родительского объекта [p] и заканчивалась в позиции по умолчанию, таким образом, положение было бы, если бы оно не было анимировано, измените ваш перевод определение следующим образом:

<translate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromYDelta="-100%p" 
    android:toYDelta="0" 
    android:repeatCount="infinite" 
    android:duration="3000"> 
    </translate> 

Если вы предпочитаете анимации, начиная с нижней, использование: android:fromYDelta="100%p"

Что касается вашего второго вопроса, то вы можете использовать атрибут android:interpolator, чтобы определить ритм анимации.

Например:

androd:interpolator="@android:anim/bounce_interpolator" 

Here is a short video демонстрирует эффекты каждого интерполятора.

Надеюсь, это поможет.

Смежные вопросы