圆形显示显示黑色背景

时间:2017-06-25 16:07:02

标签: android animation fade clip circularreveal

我正在尝试实现动画{{3}}。它的工作正常,除了未显示的动画,它暂时显示黑屏。毛刺不存在于所有设备/ api版本上。谷歌Nexus 10(API 22)的Genymotion模拟器确实显示了故障。

Unreveal使用复杂的动画集:

  • 褪色
  • 布局移动
  • 末端半径小于起始半径的CircularReveal
  • e.t.c。

我尝试将background / foreground / tint布局设置为@null / @android:color/transparent等,但它根本没有帮助。

1 个答案:

答案 0 :(得分:2)

故障只在代码中同时出现3件事:

  • CircularReveal布局项目
  • 淡化CircularReveal或其子布局
  • 的布局
  • 在揭示布局上设置clipChildren=false

除了关闭按钮之外,我需要使用clipChildren来移动CircularReveal圈,其中包含不移动的稳定内容。

我可以猜到,问题在于裁剪。 CircularReveal使用剪辑,clipChildren也使用它,然后alpha使其变脏(黑色)。我无法理解Android SDK中发生的原因,但我有一个解决方案:

禁用clipChildren(设置true),当您不需要时。我在未公开的动画上做过。结果如下:

P.S。 如果您有关于故障原因的更详细的答案,我很乐意将您的答案标记为正确答案。

P.P.S。 对于对动画实施感兴趣的任何人,我shared it here