on android 14, overridePendingTransition work wrong

107 views Asked by At

I tried to implement activity to activity transition with animation, so I used overridePendingTranstiion. and I find some very weird issue. this issue occur when I remove any obsolete xml file that placed in res/anim directory. I tested many devices, this issue only occurs on android 14 devices. and this issue disappear after restarting device. is there anyone else experienced similar problem? please excuse my poor english.

this animation is normal result.

I used animation below animation xml named 'slide_in_left'.

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="@integer/animation_default_duration"
    android:fromXDelta="100%"
    android:interpolator="@android:anim/decelerate_interpolator"
    android:toXDelta="0%" />
</set>

and, I used this like below.

class MainActivity : AppCompatActivity() {
    lateinit var binding: ActivityMainBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        window.setFlags(
            WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN
        )

        binding.button.setOnClickListener {
            startActivity(Intent(this, MainActivity2::class.java))
            overridePendingTransition(R.anim.slide_in_left,0)
        }
    }
}
1

There are 1 answers

1
Shaikh Faizan On

This method was deprecated in API level 34. Use overrideActivityTransition

public void overrideActivityTransition (int overrideType, 
                int enterAnim, 
                int exitAnim)