API 21中模糊的FloatingActionButton模糊

时间:2015-07-31 21:33:31

标签: android animation scale material-design floating-action-button

我想在底部工具栏中创建一个FloatingActionButton动画,就像在Material Design指南的工具栏部分一样。

我正在使用官方支持设计库中的FloatingActionButton。我把FAB放在另一个布局中,当FAB缩放时它将剪辑它。我在FAB上使用setScaleX()和setScaleY(),但在不同的API版本上遇到问题。

问题屏幕(对不起解决方案,我没有想要升级它,所以你不会错过这个问题):

http://imgur.com/9Mquwi6

在API 21中FAB模糊,因为它得到scaledX / scaledY,并且当FAB填充整个视图随机边框时,由背景开始闪烁(在最后的屏幕截图中可以看到)。 这些都不会发生在其他API中,FAB没有模糊,并且填充正确的整个视图,没有背景可见。

测试了不同的分辨率,从480x800到1200x1920,以及从16到22的API。可能是什么问题?它是21版Lollipop中的一个错误吗?

1 个答案:

答案 0 :(得分:0)

解决方案解决方案:

我决定用-v21版本覆盖布局,我在其中使用强调色创建了简单的圆形视图。此视图不会在任何其他版本的android中呈现,隐藏在FAB下方,默认可见性为GONE。

使用FAB onClickListener我将View可见性设置为visible,fab设置为GONE并在我创建的视图上运行动画。再次 - 这只发生在API 21上。其他api不受影响。

                if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP){
                    fab.setVisibility(View.GONE);
                    final View fabAnimHelper = fL.findViewById(R.id.fab_anim_helper);
                    fabAnimHelper.setVisibility(View.VISIBLE);
                    fabAnimHelper.startAnimation(fabFill);
                } else {
                    fab.startAnimation(fabFill);
                }