【问题标题】:How can I turn my makeSceneTransitionAnimation to a circle, and not rectangle?如何将我的 makeSceneTransitionAnimation 变成圆形,而不是矩形?
【发布时间】:2015-03-07 08:13:27
【问题描述】:

我目前正在尝试在我的 FAB 和另一个 Activity 之间创建一个循环过渡。

根据我在文档中的理解,我应该以与此类似的方式使用 makeSceneTransitionAnimation:

public void onFabClicked(View v){
    try {
        Intent intent = new Intent(this, SearchActivity.class);
        ActivityOptions options = ActivityOptions
                .makeSceneTransitionAnimation(this, v, "reveal");
        startActivity(intent, options.toBundle());
    } catch (Exception e) {
        // makeSceneTransitionAnimation not supported, maybe a check of SDK level is enough to avoid catching an error?
        Intent intent = new Intent(this, SearchActivity.class);
        startActivity(intent);
        e.printStackTrace();
    }
}

不幸的是,当前动画在动画期间显示了一个矩形。

怎么可能把它变成我们喜欢棒棒糖的美丽圆形展示?

谢谢。

编辑:

我正在努力实现这一点(除了颜色应该是全屏的,但你明白了..)):

我实际得到的:

【问题讨论】:

  • 你的意思是晶圆厂是在两个活动之间共享的,它被陶醉的方式是从矩形到圆形?你能举个例子来说明你试图实现的动画(应用程序)吗?
  • FAB 应该变成活动背景。我希望我添加的屏幕截图更好......
  • 我写了一个做类似事情的示例应用程序。你可以看看here。
  • 另外,您确实需要发布更多代码...我没有看到任何迹象表明您试图在帖子中实现循环显示。
  • 还有一些关于高级活动转换的有用博客文章on George Mount's blog。

标签: android android-5.0-lollipop activity-transition circularreveal


【解决方案1】:

好的,我以这个为例:它工作正常:

Code on Github from saulmm

但是.... 是的,这很简单而且效果很好,但我猜这并不是实现效果的最有效方法。 为您的布局添加额外的视图并使用可见性可能不是最佳方式。

在实现George Mount 的解决方案时遇到了很多麻烦。 但是由于这个解决方案是由谷歌的软件工程师编写的,在 Android UI Toolkit 团队工作,并由另一位谷歌工程师 Alex 建议,我想我应该花更多的时间在它上面,因为它不需要额外的视图在我的布局中...

第二个对我来说有点难,但会努力的。

无论如何,问题都解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多