【问题标题】:recreate activity with animation not work用动画重新创建活动不起作用
【发布时间】:2022-08-04 10:27:31
【问题描述】:

将我的所有活动更改为 ViewModel 以保留 UI 数据,因为在切换到暗模式或应用主题时我需要重新创建活动。

我创建了淡入淡出动画来添加它们,但我无法得到它。

我已经试过了

recreate()
overridePendingTransition(in, out)

finish()
overridePendingTransition(in, out)
startActivity(intent)
overridePendingTransition(in, out)

即使它没有动画,当重新创建活动时,转换与当设备旋转和活动配置时有很大不同 config-changes=\"orientation\"

    标签: android kotlin recreate


    【解决方案1】:

    我解决了做一个 kotlin 扩展:

    fun Activity.recreateSmoothly() {
        finish()
        overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out)
        startActivity(Intent(this.intent))
    }
    

    并且只是调用活动。

    【讨论】:

      猜你喜欢
      • 2015-02-20
      • 2015-12-04
      • 2020-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多