Как сделать эффект кругового раскрытия при смене темы? (Как в Telegram или ВК) - PullRequest
0 голосов
/ 18 января 2020

Я использую тему DayNight в своем приложении. И у меня есть кнопка, которая меняет тему. В приложении VK и Telegram есть красивая анимация, которая меняет тему без перезапуска активности или чего-то в этом роде.

Я пытался сделать это с помощью , чтобы показать реализацию анимации по-разному, но в некоторых случаях она не работает или работает плохо с AppCompatDelegate.setDefaultNightMode (...). Все примеры с этой анимацией раскрытия предназначены для ActivityA -> ActivityB, но мне просто нужно обновить тему, не запуская никаких действий.

И еще одна вещь: AppCompatDelegate.setDefaultNightMode воссоздает мою активность, поэтому мне нужна настраиваемая тема изменение реализации?

И главный вопрос: как создать анимацию с изменением темы?

Примеры:

Telegram (от темного к светлому)

Телеграмма (от света к темноте)

ВК (от света к темноте)

ВК (от тьмы) Свет)

1 Ответ

2 голосов
/ 18 января 2020

, поскольку telegram - приложение с открытым исходным кодом, вы можете найти код -> строка 3154: github . кажется, что он преобразует макет в растровое изображение и использует его с существующим imageView для анимации кругового раскрытия

...