Issue
I'm trying to set up the animation of the appearance of the activity, but when the activity starts, the exception "java.lang.RuntimeException: Unknown scene name: translate" is thrown.
Manifest:
<activity android:name=".ui.createtarget.CreateTargetActivity" android:theme="@style/SlidingPanel"/>
Styles.xml:
<style name="SlidingPanel" parent="AppTheme">
<item name="android:windowEnterTransition">@transition/slide_from_bottom</item>
<item name="android:windowExitTransition">@transition/slide_to_bottom</item>
</style>
Activity layout xml:
android:theme="@style/SlidingPanel"
Transition xml:
<?xml version="1.0" encoding="utf-8"?>
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:fromXDelta="-100%p"
android:toXDelta="0%p">
</translate>
If it matters, I start the activity from the fragment like this:
private fun onCreateNewTask(){
val intent = Intent(context, CreateTargetActivity::class.java)
intent.putExtra("targetPosition",targetPosition)
startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(activity).toBundle())
}
Please tell me how I can fix this!
Solution
Your Transition XML is not a valid Transition - that's a View Animation XML file, not a transition (you'd apply view animations via overridePendingTransition
called after you call startActivity
)
As per the Start an activity using a transition guide, you need to use one the types listed there. In your case, it looks like you should be using a Slide Transition with the Gravity.START
edge:
<?xml version="1.0" encoding="utf-8"?>
<slide
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="250"
android:slideEdge="start">
</slide>
Answered By - ianhanniballake
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.