private void setupWindowAnimations() { ChangeBounds exitTransition = new ChangeBounds(); exitTransition.setDuration(1000); exitTransition.addListener(exitListener); getWindow().setSharedElementExitTransition(exitTransition); ChangeBounds reenterTransition = new ChangeBounds(); reenterTransition.setDuration(1000); reenterTransition.addListener(reenterListener); reenterTransition.setInterpolator(new DecelerateInterpolator(4)); getWindow().setSharedElementReenterTransition(reenterTransition); }
private void setupWindowAnimations() { ChangeBounds enterTransition = new ChangeBounds(); enterTransition.setDuration(1000); enterTransition.setInterpolator(new DecelerateInterpolator(4)); enterTransition.addListener(enterTransitionListener); getWindow().setSharedElementEnterTransition(enterTransition); ChangeBounds returnTransition = new ChangeBounds(); returnTransition.setDuration(1000); returnTransition.addListener(returnTransitionListener); getWindow().setSharedElementReturnTransition(returnTransition); Slide exitSlide = new Slide(LEFT); exitSlide.setDuration(700); exitSlide.addListener(exitTransitionListener); exitSlide.addTarget(R.id.llphone); exitSlide.setInterpolator(new DecelerateInterpolator()); getWindow().setExitTransition(exitSlide); Slide reenterSlide = new Slide(LEFT); reenterSlide.setDuration(700); reenterSlide.addListener(reenterTransitionListener); reenterSlide.setInterpolator(new DecelerateInterpolator(2)); reenterSlide.addTarget(R.id.llphone); getWindow().setReenterTransition(reenterSlide); }
private Transition enterTransition() { ChangeBounds bounds = new ChangeBounds(); bounds.setDuration(150); return bounds; }
.... //mapFollowButton.invalidate(); mapFollowButton.postDelayed(new Runnable() { @Override public void run() { if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { final ChangeBounds transition= new ChangeBounds(); transition.setDuration(1000L); TransitionManager.beginDelayedTransition((ViewGroup) findViewById(R.id.mainRL),transition); } mapFollowButton.setLayoutParams(layoutParams_); mapFollowButton.setVisibility(View.VISIBLE); } },10);
private void moveIcon() { View moveableIcon = findViewById(R.id.moveableImageView); // change the position of the icon RelativeLayout.LayoutParams positionRule = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.WRAP_CONTENT , RelativeLayout.LayoutParams.WRAP_CONTENT); positionRule.addRule(RelativeLayout.ALIGN_PARENT_TOP , RelativeLayout.TRUE); positionRule.addRule(RelativeLayout.ALIGN_PARENT_LEFT , RelativeLayout.TRUE); moveableIcon.setLayoutParams(positionRule); // change the size of the button ViewGroup.LayoutParams sizeRules = moveableIcon.getLayoutParams(); sizeRules.width = 50; sizeRules.height = 50; moveableIcon.setLayoutParams(sizeRules); ChangeBounds myTransition = new ChangeBounds(); myTransition.setDuration(1000L); TransitionManager.go(new Scene(myLayout), myTransition); fadeOutAndHideImage(image); }
anim.start(); TransitionManager.go(mSceneLogging, new ChangeBounds().setDuration(mDuration).setInterpolator(new DecelerateInterpolator()));
slideTransition.setDuration(1000); ChangeBounds changeBounds = new ChangeBounds(); changeBounds.setDuration(1000); fragment.setEnterTransition(slideTransition); fragment.setReturnTransition(null);
private void addNextFragment(Sample sample, ImageView squareBlue, boolean overlap) { SharedElementFragment2 sharedElementFragment2 = SharedElementFragment2.newInstance(sample); Slide slide = new Slide(); slide.setDuration(getResources().getInteger(R.integer.anim_duration_medium)); ChangeBounds changeBounds = new ChangeBounds(); changeBounds.setDuration(getResources().getInteger(R.integer.anim_duration_medium)); sharedElementFragment2.setEnterTransition(slide); sharedElementFragment2.setAllowEnterTransitionOverlap(overlap); sharedElementFragment2.setAllowEnterTransitionOverlap(overlap); sharedElementFragment2.setSharedElementEnterTransition(changeBounds); getFragmentManager().beginTransaction() .replace(R.id.sample2_content,sharedElementFragment2) .addToBackStack(null) .addSharedElement(squareBlue,getString(R.string.square_blue_name)) .commit(); }
bounds.setDuration(1500); bounds.addListener(new Transition.TransitionListener() { @Override
private void setPathMotion() { ChangeBounds changeBounds = new ChangeBounds(); //或者使用PathMotion 重写Path 调用Path.cubicTo划一个弧度 ArcMotion arcMotion = new ArcMotion(); // arcMotion.setMaximumAngle(90f); // arcMotion.setMinimumVerticalAngle(90f); arcMotion.setMinimumHorizontalAngle(90F); changeBounds.setPathMotion(arcMotion); changeBounds.setDuration(1000); TransitionManager.beginDelayedTransition(flPathLayout, changeBounds); FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) btnPathMotion.getLayoutParams(); params.gravity = isPath ? Gravity.TOP | Gravity.LEFT : Gravity.BOTTOM | Gravity.RIGHT; btnPathMotion.setLayoutParams(params); isPath = !isPath; } }
bounds.setDuration(1500); bounds.addListener(new Transition.TransitionListener() { @Override
enterBounds.setDuration(300); enterBounds.setStartDelay(400); enterBounds.setInterpolator(new FastOutSlowInInterpolator()); returnBounds.setDuration(300); returnBounds.setInterpolator(new FastOutSlowInInterpolator());