Android复杂扩展活动转换

时间:2016-03-17 17:41:23

标签: android animation transition expand

所以我一直试图在一天内重现这个特定的动画:

http://material-design.storage.googleapis.com/videos/animations-meaningfultransitions-hierarchical_transitions_topLevel_large_xhdpi.webm

但我无法弄清楚如何制作它,因为我认为我不会理解这种转变的方式。

主要问题是来自imageView的扩展部分导致了其他活动。

以下是我接触整个动画的方法:

我试图像这样移动imageView:

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
    layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT);
    imageView.setLayoutParams(layoutParams);

然后在第一个动画结束时使用共享元素转换:

@Override
        public void onTransitionEnd(Transition transition) {
            Intent i = new Intent(MainActivity.this, Main2Activity.class);

            View sharedView = imageView;
            ActivityOptions transitionActivityOptions = ActivityOptions.makeSceneTransitionAnimation(MainActivity.this, sharedView, "image");
            startActivity(i, transitionActivityOptions.toBundle());
        }

但我无法想象如何扩展imageView以启动下一个活动,因为共享元素转换以基本方式启动活动。 我可能会在活动开始后扩展第二个布局,但效果会不那么令人印象深刻。

如果您对如何进行此扩展转换有任​​何想法,请告诉我

0 个答案:

没有答案