【问题标题】:How to call overridePendingTransition() when Activity is destroyed?Activity被销毁时如何调用overridePendingTransition()?
【发布时间】:2017-12-19 10:20:28
【问题描述】:

我一直在对 android 设计和 Android 功能进行很多调整,以利用 Android 框架的最大潜力,我遇到了转换,我的问题是如何定义 Activity 的 Destroyed 动画?假设我正在使用这样的意图开始一项活动:

    Intent intent_info = new Intent(ComponentsPage.this, SecondActivity.class);
            startActivity(intent_info);
            overridePendingTransition(R.anim.slide_up, R.anim.no_change);

那个 sn-p 基本上打开了带有 Slide Up 过渡的 SecondActivity。现在我在第二个活动中,第二个活动说没有任何按钮,但我希​​望每当第二个活动关闭(销毁)时,它会通过向下滑动动画关闭。

我试过添加

overridePendingTransition(R.anim.no_change,R.anim.slide_down);

在 onDestroy() 和 onStop() 里面,但还是没有运气,我猜当这些方法被调用时,activity 已经关闭了。

【问题讨论】:

  • 覆盖完成方法

标签: java android transition


【解决方案1】:

当您尝试完成第二个活动时,请尝试覆盖您的 SecondActivity 中的完成方法,如下所示:

@Override
public void finish() {
    super.finish();
    overridePendingTransition(R.anim.no_change, R.anim.slide_down);
}  

【讨论】:

  • 我明白了,我从来没有想过,你的回答对我来说是通往另一个维度的大门。谢谢!
  • @StringForever 我已经在 java 8 中尝试过它并且它有效。为什么你说它不起作用?
  • 好吧,也许我在 eclispe 中搞砸了一些事情
  • @Squareroot 没有不尊重,但你能删除你关于这在 java8+ 中不起作用的评论吗?这会造成不必要的混乱。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-14
  • 2013-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-05
相关资源
最近更新 更多