overridePendingTransition Activity动画 的使用
此方法在startActivity()或者是finish()后调用,例如
startActivity(new Intent(MainActivity.this,SecondActivity.class));
overridePendingTransition(enterAnim, exitAnim)
overridePendingTransition有两个参数,第一个参数(enterAnim)是作用于SecondActivity 的进入屏幕可见区域效果,第二个参数(exitAnim)是作用于当前 Activity 离开屏幕可见区域效果
打开Activity
MainActivity点击按钮打开SecondActivity
startActivity(new Intent(MainActivity.this,SecondActivity.class));
overridePendingTransition(R.anim.slide_in_bottom, R.anim.slide_out_bottom);
或者下面的方式:
override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.act_nutritioncalendar)overridePendingTransition(R.anim.dialog_top_in, R.anim.dialog_under_out_rili)}
关闭Activity
SecondActivity中有个按钮,点击关闭SecondActivity,打开上一个MainActivity
finish();
overridePendingTransition(R.anim.slide_in_bottom, R.anim.slide_out_bottom);
或者是下面方式
override fun finish() {super.finish() //注意不要和下面的调换顺序overridePendingTransition(R.anim.dialog_under_in, R.anim.dialog_under_outt_rili)}
一定要注意注意::::动画的fromYDelta toYdelta 要写对,不然有时效果很难出来
<set xmlns:android=""><translateandroid:fromYDelta="100%"android:toYDelta="0"android:duration="3000"/>
</set>
————————————————
原文链接:
发布评论