我有一个多模块Android项目,其中的基本/通用模块用作使用深层链接进行其他模块中活动的路由器。基本模块有一个BaseActivity
和theme
,其中已启用window transitions
,并定义了window enter/exit animations
。
我有一个新要求,即只能更改一项活动(名为WeatherActivity
,它取决于weather module
的{{1}}中的进入/退出动画)。到目前为止,我一直在使用以下代码:
base module
我可以在 private fun launch(){
val options = ActivityOptions.makeSceneTransitionAnimation(context as BaseActivity).toBundle()
ContextCompat.startActivity(intent, options) //intent has deeplink
}
或WeatherActivity
中为base module
定义新的过渡,但是这里没有访问weather module
的权限。因此,我无法传递正确的活动选项。
我还尝试覆盖WeatherActivity
的{{1}}中的过渡动画,但是此代码没有任何作用:
WeatherActivity
tl; dr 我正在寻找一种使用样式/主题提供的选项启动目标活动的方法,而不必依赖源活动本身。依靠源活动主题意味着该源启动的所有活动将具有相同的过渡。