活动转型

时间:2017-09-21 14:34:06

标签: java android xml

我正在制作笔记应用,而我正在尝试使用overridePendingTransition();在活动之间添加转换,我遇到了问题。我想要的效果是,当我添加新笔记时,新活动从我工作的底部进入。现在,当我尝试回到我的其他活动时,我希望笔记退出到底部,它会执行,但活动切换以及当它退出后面的活动仍然是相同的活动,直到它关闭屏幕然后它开关。我要包含一个显示我的意思的链接,因为这听起来很混乱。任何帮助将不胜感激。谢谢大家:)

https://youtu.be/Pw5HRwgsrok

这是使用

的动画xml

trans_infrom_bottom.xml

<?xml version="1.0" encoding="utf-8"?>

<translate
    android:fromYDelta="100%"
    android:toYDelta="0%"
    android:duration="275"/>

trans_outto_bottom.xml

<?xml version="1.0" encoding="utf-8"?>

<translate
    android:fromYDelta="0%"
    android:toYDelta="100%"
    android:duration="275"/>

trans_notrans.xml

<?xml version="1.0" encoding="utf-8"?>

<translate
    android:fromYDelta="0%"
    android:toYDelta="0%"
    android:duration="275"/>

MainActivity.java

public void Add_New_Note(View view) {
    Intent new_note = new Intent(this, New_Note.class);
    startActivity(new_note);
    overridePendingTransition(R.anim.trans_infrom_bottom, R.anim.trans_notrans);
}

New_Note.java

public void back_to_sheets(View view) {

    Intent back_to_sheets = new Intent(this, MainActivity.class);
    startActivity(back_to_sheets);
    overridePendingTransition(R.anim.trans_outto_bottom, R.anim.trans_notrans);
}

3 个答案:

答案 0 :(得分:0)

尝试覆盖后退按钮的行为:

@Override
public void onBackPressed() {
    finish();
    overridePendingTransition(R.anim.trans_outto_bottom, R.anim.trans_outto_left);
}

它会在按下后退按钮

时添加动画

答案 1 :(得分:0)

您应该考虑使用片段代替Activity来制作简单的代码,并且可以重复使用多个实例的相同片段来制作多个笔记。

回答你的问题,因为@bukkojot建议你需要实现finish()方法不要再次启动活动,因为该活动已经在backStack中了。所以回去的唯一方法就是活动。

您可以查看其他答案,了解如何处理工具栏How to implement android Toolbar Back button上的backButton。

答案 2 :(得分:0)