Transition Manager - Sliding A View Out Is Not Working As Wanted
I'm trying to slide this view in and out using Transition + Transition manager, however when hitting the hide button to make the view GONE it doesn't have the sliding animation. H
Solution 1:
Not sure whats wrong with your code. i have created a sample, just try the code below it working fine. make sure to add android:visibility="gone" for panel view in layout so that its hidden at first launch.
publicclassMainActivityextendsAppCompatActivity {
booleanisShowing=false;
@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_damm_activty);
findViewById(R.id.testBtn).setOnClickListener(v -> {
showSlidingPanel(!isShowing);
});
}
privatevoidshowSlidingPanel(boolean show) {
ViewGroupparent= findViewById(R.id.main_activity_root_view);
Viewlayout= findViewById(R.id.layout);
Transitiontransition=newSlide(Gravity.START);
transition.setDuration(450);
transition.addTarget(R.id.layout);
transition.setInterpolator(newAccelerateDecelerateInterpolator());
TransitionManager.beginDelayedTransition(parent, transition);
layout.setVisibility(show ? View.VISIBLE : View.GONE);
isShowing = show;
}
}
Solution 2:
Create these animations
slide up
<translateandroid:duration="400"android:fromYDelta="100%"android:toYDelta="0" />slide down
<translateandroid:duration="400"android:fromYDelta="0"android:toYDelta="100%" />When you want to set the layout visible
binding.musicOptionsLayout.setVisibility(View.GONE); binding.musicOptionsLayout.startAnimation(AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_down));
When you want to set the layout Gone
binding.musicOptionsLayout.setVisibility(View.GONE); binding.musicOptionsLayout.startAnimation(AnimationUtils.loadAnimation(v.getContext(), R.anim.slide_down));
set android:visibility="gone" on XML..
Hope this will fix your issues...
Post a Comment for "Transition Manager - Sliding A View Out Is Not Working As Wanted"