2013-10-07 3 views
0

Я пытаюсь создать анимацию, которую я использую с методом overridePendingTransition(). Однако я не могу получить результат, который я хочу. Я хочу, чтобы первая активность выходила из экрана, а вторая активность начиналась снизу. Нижняя анимация работает, но я не могу получить первое действие, чтобы скользить вверх. В настоящее время я использую эту анимацию:Анимационный переход со слайдом

<set xmlns:android="http://schemas.android.com/apk/res/android" > 
<translate 
    android:duration="600" 
    android:fillAfter="true" 
    android:fromYDelta="100%p" 
    android:shareInterpolator="false" 
    android:toYDelta="0%p" /> 
</set> 

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

ответ

1

использовать данную

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
    android:duration="500" 
    android:fromYDelta="0%" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:toYDelta="-100%" /> 

здесь интерпол: Интерполятор определяет скорость изменения анимации. Это позволяет основные анимационные эффекты (альфа, масштаб, перемещение, вращение) ускоряться, замедляться, повторяется и т.д.

source

+1

Этот ответ и один ниже, оба правильные! Благодаря! –

1

Чтобы скользить вверх, используйте

android:fromYDelta="0%p" 

и

android:toYDelta="-100%p" 
0
<set xmlns:android="http://schemas.android.com/apk/res/android"> 
    <translate android:fromYDelta="0" android:toYDelta="-100%p" 
      android:duration="@android:integer/config_longAnimTime"/> 
    <alpha android:fromAlpha="1.0" android:toAlpha="0.0" 
      android:duration="@android:integer/config_longAnimTime" /> 
</set> 

использование этого работает отлично

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