今天我们来讲一讲Andorid中如何定制返回按钮的动画效果。我将结合实际应用来阐述如何使用。
首先来看一个效果截图,有一个搜索按钮在一个页面的顶部:
我之前实现的方式是和百度/Google首页搜索的效果一样的,类似web开发中的ajax请求,结果直接在当前页面显示出来(下拉效果)。后来参考了众多APP之后发现都是进入到一个新的页面,所以我也就改过来试试。。废话说多了。。
那我们点击了搜索框之后呢,会进入到一个新的activity,这里的动画效果很简单,直接使用overridePendingTransition方法即可产生效果。。
@Override public void onClick(View v) { Intent intent = new Intent(activity, MerchantsSearchActivity.class); startActivity(intent); overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left); }
进入到真正的搜索界面:
这里我们有个返回按钮,怎么样点击返回按钮,让页面返回到上个页面并且动画效果是往右滑动呢?
首先想到的是重写
@Override public void onBackPressed() { overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right); super.onBackPressed(); }
这样试下,是不行的。
然后通过activity生命周期的方向考虑,可行的方法是在onPause方法中加入动画效果代码:
protected void onPause() { super.onPause(); overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right); }
运行,点击back。完美运行。
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发动画技巧汇总》、《Android开发入门与进阶教程》及《Android控件用法总结》。
希望本文所述对大家Android程序设计有所帮助。