@Override public void onPrepared() { if (!canceled) { TransitionManager.beginDelayedTransition(container, transition); executePropertyChanges(container, from, to, transition, isPush); } } });
TransitionManager.go(mScene1); TransitionManager.go(mScene2); break; mTransitionManagerForScene3.transitionTo(mScene3); TransitionManager.beginDelayedTransition(mSceneRoot);
public void selectScene(View view) { switch (view.getId()) { case R.id.scene1: mTransitionManager.transitionTo(mScene1); break; case R.id.scene2: mTransitionManager.transitionTo(mScene2); break; case R.id.scene3: mTransitionManager.transitionTo(mScene3); break; case R.id.scene4: // scene4 is not an actual 'Scene', but rather a dynamic change in the UI, // transitioned to using beginDelayedTransition() to tell the TransitionManager // to get ready to run a transition at the next frame TransitionManager.beginDelayedTransition(mSceneRoot); setNewSize(R.id.view1, 150, 25); setNewSize(R.id.view2, 150, 25); setNewSize(R.id.view3, 150, 25); setNewSize(R.id.view4, 150, 25); break; } }
TransitionManager.go(toScene, transition);
public void selectScene(View view) { switch (view.getId()) { case R.id.scene1: mTransitionManager.transitionTo(mScene1); break; case R.id.scene2: mTransitionManager.transitionTo(mScene2); break; case R.id.scene3: mTransitionManager.transitionTo(mScene3); break; case R.id.scene4: // scene4 is not an actual 'Scene', but rather a dynamic change in the UI, // transitioned to using beginDelayedTransition() to tell the TransitionManager // to get ready to run a transition at the next frame TransitionManager.beginDelayedTransition(mSceneRoot); setNewSize(R.id.view1, 150, 25); setNewSize(R.id.view2, 150, 25); setNewSize(R.id.view3, 150, 25); setNewSize(R.id.view4, 150, 25); break; } }
protected void switchScene(Transition transition){ TransitionManager.go(isScene2?scene1:scene2,transition); isScene2=!isScene2; } @Override
@Override public void onAvailable(Network network) { connected = true; if (adapter.getDataItemCount() != 0) return; runOnUiThread(() -> { TransitionManager.beginDelayedTransition(drawer); noConnection.setVisibility(View.GONE); loading.setVisibility(View.VISIBLE); dataManager.loadAllDataSources(); }); }
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @OnClick(R.id.scenesMethod) public void onClick() { if (nowScenesMethod == scene1) nowScenesMethod = scene2; else if (nowScenesMethod == scene2) nowScenesMethod = scene1; //注意 invisbility 和Gone不一样 动画 TransitionManager.go(nowScenesMethod, nowTransition); // TransitionManager.go(nowScenesMethod); }
private void renderAmount() { double amountDouble = parsedAmount(); String rendered = Moneys.formatDollars(amountDouble); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { TransitionManager.beginDelayedTransition((ViewGroup) amountView.getParent()); } amountView.setText(rendered); sendView.setEnabled(amountDouble > 1d); }
public static Scene hideScene(Activity activity, final ViewGroup container, final View sharedView, final String transitionName) { DetailsLayout detailsLayout = (DetailsLayout) container.findViewById(R.id.bali_details_container); TransitionSet set = new HideDetailsTransitionSet(activity, transitionName, sharedView, detailsLayout); Scene scene = new Scene(container, (View) detailsLayout); TransitionManager.go(scene, set); return scene; } }
@OnClick(R.id.button_months) public void onSetMonthMode() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && animateModeTransition.isChecked()) { TransitionManager.beginDelayedTransition(parent); } widget.state().edit().setCalendarDisplayMode(CalendarMode.MONTHS).commit(); }
protected void initScene(@IdRes int rootView, @LayoutRes int scene1_layout,@LayoutRes int scene2_layout) { ViewGroup sceneRoot= (ViewGroup) findViewById(rootView); scene1= Scene.getSceneForLayout(sceneRoot,scene1_layout,this); scene2=Scene.getSceneForLayout(sceneRoot,scene2_layout,this); TransitionManager.go(scene1); }
@OnClick(R.id.button_weeks) public void onSetWeekMode() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && animateModeTransition.isChecked()) { TransitionManager.beginDelayedTransition(parent); } widget.state().edit().setCalendarDisplayMode(CalendarMode.WEEKS).commit(); }
@Override public void onClick(View v) { switch (v.getId()) { case R.id.sample3_button1: TransitionManager.go(scene1, new ChangeBounds()); break; case R.id.sample3_button2: TransitionManager.go(scene2, TransitionInflater.from(this).inflateTransition(R.transition.slide_and_changebounds)); break; case R.id.sample3_button3: TransitionManager.go(scene3,TransitionInflater.from(this).inflateTransition(R.transition.slide_and_changebounds_sequential)); break; case R.id.sample3_button4: TransitionManager.go(scene3,TransitionInflater.from(this).inflateTransition(R.transition.slide_and_changebounds_sequential_with_interpolators)); break; } }
/** * Starts a transition only if on KITKAT or higher. * * @param root The scene root */ private static void startTransition(ViewGroup root) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { TransitionManager.beginDelayedTransition(root); } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_scene_change_clip_bounds); initToolbar(); ViewGroup sceneRoot= (ViewGroup) findViewById(R.id.scene_root); View inflate = LayoutInflater.from(this).inflate(R.layout.scene_1_changeclipbounds, null); View inflate2 = LayoutInflater.from(this).inflate(R.layout.scene_2_changeclipbounds, null); ImageView imageView= (ImageView) inflate.findViewById(R.id.cutegirl); ImageView imageView2= (ImageView) inflate2.findViewById(R.id.cutegirl); imageView.setClipBounds(new Rect(0,0,200,200)); imageView2.setClipBounds(new Rect(200,200,400,400)); scene1=new Scene(sceneRoot,inflate); scene2=new Scene(sceneRoot,inflate2); TransitionManager.go(scene1); }
@TargetApi(Build.VERSION_CODES.KITKAT) private void beginDelayedExpandTransition() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { TransitionManager.beginDelayedTransition(this, expandTransitionSet); } }
public static Scene showScene(Activity activity, final ViewGroup container, final View sharedView, final String transitionName, final Place data) { DetailsLayout detailsLayout = (DetailsLayout) activity.getLayoutInflater().inflate(R.layout.item_place, container, false); detailsLayout.setData(data); TransitionSet set = new ShowDetailsTransitionSet(activity, transitionName, sharedView, detailsLayout); Scene scene = new Scene(container, (View) detailsLayout); TransitionManager.go(scene, set); return scene; }
@OnCheckedChanged(R.id.calendar_mode) void onCalendarModeChanged(boolean checked) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { TransitionManager.beginDelayedTransition(parent); } final CalendarMode mode = checked ? CalendarMode.WEEKS : CalendarMode.MONTHS; single.state().edit().setCalendarDisplayMode(mode).commit(); multi.state().edit().setCalendarDisplayMode(mode).commit(); range.state().edit().setCalendarDisplayMode(mode).commit(); none.state().edit().setCalendarDisplayMode(mode).commit(); } }
@TargetApi(Build.VERSION_CODES.LOLLIPOP) private void scenesMethod() { root = (ViewGroup) findViewById(R.id.root); //这个无限次数都好使... 这种加载方式支持Gone 也支持invisiblity 但是不支持 生成场景之前 移动某个view的属性 // sceneByXml_FirstType(); //这个是已经加载的View 不支持 Gone的操作 仅仅支持invisibility的操作; 支持 生成场景之前支持移动某个View的属性; // sceneByNowLayout_SecondType(); //这个支持Gone不过仅仅支持两次就失效了 但是支持 invisibility 支持 生成场景之前支持移动某个View的属性; sceneByMyselfInflateXml_ThreeType(); //为啥这里用这个 因为我不加这个 第一次的场景他不是 scene1 导致第一次动画有点问题 加上就好了; //但是自定义那个xml Transition 则可不用加这个...!!! TransitionManager.go(scene1, new ChangeBounds()); scene2 = Scene.getSceneForLayout(root, R.layout.item2, this); nowScenesMethod = scene1; }