问题
I read the below link before posting this.
How to apply slide animation between two activities in Android?
I need to know how to make activity slideup xml animation. like what they have done for fadein and fadeout.
回答1:
for slide_in xml :
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromXDelta="-100%p"
android:toXDelta="0%p">
</translate>
for slide_out xml:
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromXDelta="0"
android:toXDelta="100%p">
</translate>
Java code :
Intent intent = new Intent(this, newActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_in, R.anim.slide_out);
put both xml files in res/anim folder.
回答2:
The accepted answer isn't what the question was asking, which is animations that slide up from the bottom and slide out from the top.
pull_up_from_bottom.xml
:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="100%"
android:toYDelta="0%" />
push_out_to_bottom.xml
:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="0%"
android:toYDelta="100%" />
回答3:
This is what I was after:
res/anim/slide_up.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="100%"
android:toYDelta="0%" />
res/anim/slide_down.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="0%"
android:toYDelta="0%" />
res/anim/slide_down_reverse.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="0%"
android:toYDelta="0%" />
res/anim/slide_up_reverse.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromYDelta="0%"
android:toYDelta="100%" />
YourActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.your_layout)
overridePendingTransition(R.anim.slide_up, R.anim.slide_down)
}
override fun finish() {
super.finish()
overridePendingTransition(R.anim.slide_down_reverse, R.anim.slide_up_reverse)
}
来源:https://stackoverflow.com/questions/11912277/slide-up-xml-animation-on-change-activity-in-android