我在我的应用程序中使用了DayNight主题。我有一个改变主题的按钮。在VK和Telegram应用程序中,有一个漂亮的显示动画,可以在不重新启动活动或类似内容的情况下更改主题。
我试图以不同的方式通过揭示动画实现来实现这一点,但在某些情况下,使用 AppCompatDelegate.setDefaultNightMode(...( 它不起作用或工作不好。所有显示动画的示例都适用于活动A ->活动 B,但我只需要在不启动任何活动的情况下更新主题。
还有一件事:AppCompatDelegate.setDefaultNightMode 重新创建我的活动,那么我是否需要自定义主题更改实现?
主要问题:如何在主题变化的情况下创建动画?
例子:
电报(从黑暗到光明(
电报(从亮到暗(
VK(从浅色到深色(
VK(从暗到亮(
由于Telegram是一个开源应用程序,因此您可以找到代码->行3154:GitHub。 似乎它将布局转换为位图并将其与现有图像一起使用View 以动画循环显示