我尝试重写onBackPressed()方法来设置我自己的动画,但实际上它从我的Activity滑动到同一个Activity,然后显示新Activity。
下面是我的代码:
@Override
public void onBackPressed()
{
super.onBackPressed();
overridePendingTransition(R.anim.slide_out_right, R.anim.slide_in_left);
}
下面是动画:
向右滑出:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:duration="400" android:fromXDelta="0%" android:toXDelta="100%" />
<alpha android:duration="400" android:fromAlpha="1.0" android:toAlpha="0.0" />
</set>
滑入左侧:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator= "false" >
<translate android:duration = "400" android:fromXDelta = "-100%" android:toXDelta = "0%" />
<alpha android:duration = "400" android:fromAlpha = "0.0" android:toAlpha = "1.0" />
</set>
谢谢你们的帮助。
4条答案
按热度按时间brqmpdu11#
super.onBackPressed();
删除此行然后工作这是翻译从左侧滑入
从右侧滑入
向左滑出
向右滑出
/
并添加您在按下返回时正在使用的功能。
jhiyze9q2#
尝试这一次,如果这对你来说很好,那么你可能会有一些其他部分的问题
向下滑动.xml
向上滑动对话框.xml
并在活动中添加以下内容
nimxete23#
编辑:以下是来自Android Developers Blog - Back and other hard keys: three stories的答案
如果您要调查Android平台中的基础应用程序,您会注意到一个相当常见的模式:添加一点魔法来拦截BACK键并做一些不同的事情。要正确地做到这一点,魔法需要看起来像这样:
如何拦截Activity中的BACK键也是我们看到开发人员问的常见问题之一,因此从2.0开始,我们有了一个新的小API,使其更简单,更容易发现和正确处理:
如果这就是您所关心的,并且您不担心支持2.0之前的平台版本,那么您可以到此为止,否则,请继续阅读。
因此,您的代码应该如下所示
以及
xriantvc4#
下面是你可以尝试解决它: