我遇到了问题。
我有三个 Activity ,我需要从左滑开始新的 Activity 。
Activity1
Activity2
Activity3
表示
当我点击按钮时,新 Activity 不应像 android 行为那样直接显示。
我希望新 Activity 来自右侧并显示在当前屏幕上。
任何人都可以为我提供指导。 这是动画或其他任何东西。
最佳答案
我将尝试通过以下示例帮助您:
res/anim/trans_left_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="100%p"
android:toXDelta="0"
android:duration="@android:integer/config_longAnimTime"/>
</set>
res/anim/trans_left_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="-100%p"
android:duration="@android:integer/config_longAnimTime"/>
</set>
res/anim/trans_right_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-100%p"
android:toXDelta="0"
android:duration="@android:integer/config_longAnimTime"/>
</set>
res/anim/trans_right_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="100%p"
android:duration="@android:integer/config_longAnimTime"/>
</set>
src/Activity2
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_traces);
overridePendingTransition(R.anim.trans_left_in, R.anim.trans_left_out);
...}
@Override
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(R.anim.trans_right_in, R.anim.trans_right_out);
}
关于android - 以从左到右模式开始 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16648279/