Установить анимацию на программный dismiss BottomSheetDialogFragment'а

183
21 мая 2022, 15:30

Господа, вопрос скорее всего простой, но при гуглении кидает на "кастомные анимации". Есть BottomSheetDialogFragment который открывается и скрывается программно из кода. Открытие:

bottomFragment.show(getParentFragmentManager(),"ModalButtomSheet");

Закрытие:

bottomFragment.dismiss();

Однако открывается он со стандартной анимацией (всплывает). А закрывается без анимации - просто пропадает. Задача: сделать так, чтобы он закрывался с такой же стандартной анимацией (уплывал вниз за экран).

Answer 1

Добавить анимацию можно таким способом (на примере фрагмента):

@Override
public void onActivityCreated(Bundle arg0) {
    super.onActivityCreated(arg0);
    getDialog().getWindow()
    .getAttributes().windowAnimations = R.style.DialogAnimation;
}

и вот анимация в стилях:

<style name="DialogAnimation">
    <item name="android:windowEnterAnimation">@anim/slide_up</item>
    <item name="android:windowExitAnimation">@anim/slide_down</item>
</style>

и вот есть так же статья по данному вопросу. Вот документация по вопросу анимации.

READ ALSO
Зачем нужен JNDI, если есть Spring IoC container (dependency lookup)?

Зачем нужен JNDI, если есть Spring IoC container (dependency lookup)?

Пишут, что JNDI нужен для того, чтобы мы могли из Java-кода получить Java-объект из некоторой "Регистратуры" объектов по имени объекта, привязанного...

243
Java: Jlabel не отображается

Java: Jlabel не отображается

Изучаю библиотеку java awt и java swing(И вообще всю Java) и столкнулся с проблемой JLabel не отображается на экранеВроде все процессы инициализированы

194
Поочередная запись потоками в файл

Поочередная запись потоками в файл

Всем привет, есть задание: На вход передается целое число, больше 0, кратное 2 (n)Создается два потока, работающих параллельно, каждый поток...

150
Как получить такой эффект

Как получить такой эффект

Подскажите, как получить такой эффект:

333