Android 无法使幻灯片动画正常工作

Android 无法使幻灯片动画正常工作,android,animation,styles,transition,slide,Android,Animation,Styles,Transition,Slide,我正在尝试从我的列表页面到详细页面的转换效果,然后在从详细页面返回到列表页面之后。比如: +----------+ +--------+ A | All from same direction +------+ B | | | A | +--> | | | | | | | | | | +--> | | +------+ | | +--------+ | +----------+

我正在尝试从我的列表页面到详细页面的转换效果,然后在从详细页面返回到列表页面之后。比如:

+----------+ +--------+ A | All from same direction +------+ B | | | A | +--> | | | | | | | | | | +--> | | +------+ | | +--------+ | +----------+ +--------+ +----------+ | B |---+ +----| A | | | A | | B | | | | | | | | | | | | | | | | | | | | | +---> | | | | | | | | <----+ | | | | | | | | |---+ +----| | +--------+ | | +----------+ B moves over A, then after pressing back A moves over B. 从左到右滑动:

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false">
    <translate android:fromXDelta="-100%"
               android:toXDelta="0%"
               android:fromYDelta="0%"
               android:toYDelta="0%"
               android:duration="350"/>
</set>

从右向左滑动:

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false">
    <translate android:fromXDelta="0%"
               android:toXDelta="100%"
               android:fromYDelta="0%"
               android:toYDelta="0%"
               android:duration="350" />
</set>
<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false">
    <translate android:fromXDelta="100%"
               android:toXDelta="0%"
               android:fromYDelta="0%"
               android:toYDelta="0%"
               android:duration="350" />
</set>

基本上,我希望滑块在按下时能自然地朝相反方向工作**

试试这个:

@Override
public void onBackPressed()
{
    super.onBackPressed();
    overridePendingTransition(null,  R.anim.right_to_left_slide);
}
使用从右到左的幻灯片:

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false">
    <translate android:fromXDelta="0%"
               android:toXDelta="100%"
               android:fromYDelta="0%"
               android:toYDelta="0%"
               android:duration="350" />
</set>
<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false">
    <translate android:fromXDelta="100%"
               android:toXDelta="0%"
               android:fromYDelta="0%"
               android:toYDelta="0%"
               android:duration="350" />
</set>

有4种不同的场景将设置动画:

          ******************
          *                *
Left    ==*==>  Center     * 
          *                *
          ******************

          ******************
          *                *
          *     Center   ==*==>     Right       
          *                *
          ******************

          ******************
          *                *
Left   <==*==   Center     * 
          *                *
          ******************

          ******************
          *                *
          *     Center  <==*==      Right       
          *                *
          ******************
从中到右滑动

从中到左滑动

从右到中滑动

然后:

详细信息列表:

要列出的详细信息:


也许您希望在从右到左的幻灯片中显示android:fromXDelta=“-100%”android:toXDelta=“0%”,这会使两者相同吗?我真的想要从左到右,然后从右到左。。。然而,第二个是做了错误的活动。。。
    android:fromXDelta="-100%"
    android:toXDelta="0%"
    android:fromXDelta="0%"
    android:toXDelta="100%"
    android:fromXDelta="0%"
    android:toXDelta="-100%"
    android:fromXDelta="100%"
    android:toXDelta="0%"
overridePendingTransition(R.anim.left_to_center_slide, 
                                           R.anim.center_to_right_slide);
overridePendingTransition(R.anim.right_to_center_slide, 
                                           R.anim.center_to_left_slide);