覆盖挂起转换,以便顺利地将活动滑入和滑出
我很难弄清楚如何通过按下按钮将活动滑入和滑出。我想要的是让用户按下一个按钮,然后屏幕滑动。我想要的方式是让第一个活动(带有按钮的活动)向左滑出,而新的第二个活动从右侧滑入。
使用下面的代码,当单击按钮时,当我希望第一个活动向左滑出时,它向右滑动。然后,当它完成滑动时,剩下的只是一瞬间的黑屏,然后第二个活动刚刚出现并且不会滑入。
因此,第一个活动滑出不正确的方向,下一个活动只是出现而不是滑动。我做错了什么?我很难理解XML文件,所以听到下面所有内容的代码。
第一次活动
@Override
public void onCreate(Bundle savedInstanceState) {
playBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(MainMenu.this, Levels.class);
startActivity(intent);
overridePendingTransition(R.anim.enter_from_right, R.anim.exit_out_left);
}
});
第二次活动
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.levels);
overridePendingTransition(R.anim.enter_from_left, R.anim.exit_out_right);
所以我认为我的一些XML文件可能不正确。他们来了。
enter_from_left.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>
enter_from_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>
exit_out_left.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>
exit_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>
编辑从第 2 个活动中删除 它使得第 1 个活动滑出到左侧,这就是我想要的。但是,当第 1 个活动滑出时,它仍然只是显示一个黑屏,而不是让第 2 个活动从右侧滑入。overridePendingTransition()