如何做:按下按钮后 - 当前视图将向左交换,新视图将出现
How to do: After button pressed - current view will swap left, new view will come
我是一名新 android 学习者。我正在做一个应用项目。在那个项目中,假设我有一个名为 MainActivity 的 activity。在 activity 的布局中,我有一些单选组和一个按钮。
当此 activity 启动时,用户可以检查那些无线电组。如果用户按下按钮,当前视图将向左滑动并出现一个新视图,这实际上是前一个视图的初始状态(就像单选按钮已被重置)。现在用户可以再次检查那些无线电组。
我该怎么做。
首先在布局中创建RadioGroup
和Button
。然后在代码中将下一行设置为您的按钮 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
我是一名新 android 学习者。我正在做一个应用项目。在那个项目中,假设我有一个名为 MainActivity 的 activity。在 activity 的布局中,我有一些单选组和一个按钮。
当此 activity 启动时,用户可以检查那些无线电组。如果用户按下按钮,当前视图将向左滑动并出现一个新视图,这实际上是前一个视图的初始状态(就像单选按钮已被重置)。现在用户可以再次检查那些无线电组。
我该怎么做。
首先在布局中创建RadioGroup
和Button
。然后在代码中将下一行设置为您的按钮 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/
这是从左到右的动画:
<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