安卓和iPhone等智能手机在按钮上有很大的不同。 安卓的手机有后退按钮。 今天我们来谈谈这个后退按钮。 这个问题处理不好以后会有点麻烦。
捕捉后退按钮事件
首先,创建今天要使用的APP项目,并向项目中添加两个Activity。 一个是ActivityOne,另一个是ActivityTwo。 要实现简单的功能,请从ActivityOne跳到ActivityTwo。 然后,在ActivityTwo中单击“后退”按钮返回到第一个Activity。
要响应后退按钮操作,请捕获后退按钮事件。 代码如下所示。
@Override
public void onBackPressed (
log.I(tag,' back button pressed ' );
super.onBackPressed (;
}
现在,在ActivityTwo中单击“后退”按钮后,可以看到这个方法正在运行。 当然,没有什么不同。 已返回上一个Activity。 如果你是super.onBackPressed (); 单击“上一步”按钮不会返回到上一个Activity,而只是保留在原始Activity中。
捕获了返回操作,能做什么呢
通常,“后退”按钮只需要处理一件事:返回上一个Activity。 但是,也可以做其他的事情。 第一,修改默认的后退动画。 可以在anim文件夹下添加动画(onBackPressed ) )方法使用该动画来复盖默认的后退动画。
@Override
public void onBackPressed (
log.I(tag,' back button pressed ' );
super.onBackPressed (;
overridependingtransition (r.anim.wsdds _ in,R.anim.wsdds_out );
}
动画xml文件:
wsdds_in.xml
安卓: duration=' 500 '
安卓: shareinterpolator=' @安卓: anim/accelerate _ decelerate _ INTERPOL ator '
安卓: from xscale=' 80 % '
安卓: fromyscale=' 80 % '
android:pivotX='50% '
安卓: pivoty=' 50 % '
android:toXScale='100% '
android:toYScale='100%' /
安卓: from alpha=' 0.5 '
Android : to alpha=' 1.0 ' /
wsdds_out.xml
安卓: duration=' 500 '
安卓: shareinterpolator=' @安卓: anim/accelerate _ decelerate _ INTERPOL ator '
安卓: from xscale=' 100 % '
安卓: fromyscale=' 100 % '
android:pivotX='50% '
安卓: pivoty=' 50 % '
android:toXScale='150% '
android:toYScale='150%' /
安卓: from alpha=' 1.0 '
Android : to alpha=' 0.5 ' /
这里使用自定义动画,而不是切换系统默认Activity的动画。 即使现在对动画不太了解,稍后也会详细说明。