internal virtual void show(bool markHiddenBeforeMode) { if (mCurrentShowAnim != null) { mCurrentShowAnim.end(); } if (mContainerView.getVisibility() == android.view.View.VISIBLE) { if (markHiddenBeforeMode) { mWasHiddenBeforeMode = false; } return; } mContainerView.setVisibility(android.view.View.VISIBLE); if (mShowHideAnimationEnabled) { mContainerView.setAlpha(0); android.animation.AnimatorSet anim = new android.animation.AnimatorSet(); android.animation.AnimatorSet.Builder b = anim.play(android.animation.ObjectAnimator .ofFloat(mContainerView, "alpha", 1)); if (mContentView != null) { b.with(android.animation.ObjectAnimator.ofFloat(mContentView, "translationY", -mContainerView .getHeight(), 0)); mContainerView.setTranslationY(-mContainerView.getHeight()); b.with(android.animation.ObjectAnimator.ofFloat(mContainerView, "translationY", 0 )); } if (mSplitView != null && mContextDisplayMode == CONTEXT_DISPLAY_SPLIT) { mSplitView.setAlpha(0); mSplitView.setVisibility(android.view.View.VISIBLE); b.with(android.animation.ObjectAnimator.ofFloat(mSplitView, "alpha", 1)); } anim.addListener(mShowListener); mCurrentShowAnim = anim; anim.start(); } else { mContainerView.setAlpha(1); mContainerView.setTranslationY(0); mShowListener.onAnimationEnd(null); } }
public override void hide() { if (mCurrentShowAnim != null) { mCurrentShowAnim.end(); } if (mContainerView.getVisibility() == android.view.View.GONE) { return; } if (mShowHideAnimationEnabled) { mContainerView.setAlpha(1); mContainerView.setTransitioning(true); android.animation.AnimatorSet anim = new android.animation.AnimatorSet(); android.animation.AnimatorSet.Builder b = anim.play(android.animation.ObjectAnimator .ofFloat(mContainerView, "alpha", 0)); if (mContentView != null) { b.with(android.animation.ObjectAnimator.ofFloat(mContentView, "translationY", 0, -mContainerView.getHeight())); b.with(android.animation.ObjectAnimator.ofFloat(mContainerView, "translationY", - mContainerView.getHeight())); } if (mSplitView != null && mSplitView.getVisibility() == android.view.View.VISIBLE) { mSplitView.setAlpha(1); b.with(android.animation.ObjectAnimator.ofFloat(mSplitView, "alpha", 0)); } anim.addListener(mHideListener); mCurrentShowAnim = anim; anim.start(); } else { mHideListener.onAnimationEnd(null); } }