(Устарело ) deprecation overridePendingTransition

Рейтинг: -1Ответов: 2Опубликовано: 30.07.2023

Как можно исправить данное устаревание ? )

введите сюда описание изображения

введите сюда описание изображения

\Main0Activity.java:9397: warning: [deprecation] overridePendingTransition(int,int) in Activity has been deprecated
        overridePendingTransition(R.anim.erasing,R.anim.erasing);

Использую так

public  void  Intent_MainActivity(View view){

        Intent intent = new Intent(this, MainActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP );
        startActivity(intent);
        overridePendingTransition(R.anim.erasing,R.anim.erasing);
        finish();

    }

//

<?xml version="1.0" encoding="utf-8"?>
<alpha
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromAlpha="1.0"
    android:toAlpha="1.0"
    android:duration="250">
</alpha>

Ответы

▲ 0
//Определяем ваши кастомные анимации

val enterAnimation = R.anim.your_enter_animation
val exitAnimation = R.anim.your_exit_animation

//Создаем объект ActivityOptions с вашими анимациями

val activityOptions = ActivityOptions.makeCustomAnimation(requireContext(), enterAnimation, exitAnimation)

//Запускаем новую активность с настраиваемыми анимациями

val intent = Intent(requireContext(), NextActivity::class.java)
startActivity(intent, activityOptions.toBundle())
▲ -2

Хз думаю так должно работать (Кто что думает?)

   @SuppressWarnings("deprecation")
    public void Intent_MainActivity(View view){

        Intent intent = new Intent(this, MainActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP );
        startActivity(intent);

        if (android.os.Build.VERSION.SDK_INT <= Build.VERSION_CODES.TIRAMISU)
        {
            overridePendingTransition(R.anim.erasing,R.anim.erasing);
        }
        else
        {
            // API > 33
            overrideActivityTransition(R.anim.erasing, R.anim.erasing, 0);
        }

        finish();

    }