如何做:按下按钮后 - 当前视图将向左交换,新视图将出现

How to do: After button pressed - current view will swap left, new view will come

我是一名新 android 学习者。我正在做一个应用项目。在那个项目中,假设我有一个名为 MainActivity 的 activity。在 activity 的布局中,我有一些单选组和一个按钮。

当此 activity 启动时,用户可以检查那些无线电组。如果用户按下按钮,当前视图将向左滑动并出现一个新视图,这实际上是前一个视图的初始状态(就像单选按钮已被重置)。现在用户可以再次检查那些无线电组。

我该怎么做。

首先在布局中创建RadioGroupButton。然后在代码中将下一行设置为您的按钮 onCliclListener():

Intent intent = getIntent();
finish();
startActivity(intent);

//In your coding use intent like for left to right:

YourClass.this.overridePendingTransition(R.anim.animation_enter,
                   R.anim.animation_leave);
//    
//OR
//

//In your coding use intent like for right to left:

YourClass.this.overridePendingTransition(R.anim.animation_leave,
                               R.anim.animation_enter);

并创建动画:

res/anim/

中使用这个xml

这是从左到右的动画:

<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="700"/>
</set>

这是从右到左的动画:

<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="700" />
</set>

您还可以设置标准 android 动画:

YourClass.this.overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);

如果您想要另一个方向,请使用此 xml`s:

anim_slide_in_right.xml

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

anim_slide_out_right.xml

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

我希望这个示例应用程序正好包含您的问题的解决方案。 http://developer.android.com/training/animation/screen-slide.html