Circular Reveal 显示黑色背景
Circular Reveal shows black background
我正在尝试实现动画 shown here。它工作正常,除了 unreveal 动画,显示黑屏片刻。并非所有 devices/api 版本都存在该故障。 Google Nexus 10 (API 22) 的 Genymotion 模拟器确实显示了故障。
Unreveal 使用复杂的动画集:
- 淡化
- 布局移动
- 结束半径小于起始半径的 CircularReveal
- e.t.c.
我尝试将 background
/foreground
/tint
的布局设置为 @null
/@android:color/transparent
和 e.t.c,但是它一点用都没有。
故障仅在代码中同时发生 3 件事时发生:
CircularReveal
项目布局
CircularReveal
或其子布局 的淡化布局
- 在显示布局上设置
clipChildren=false
我需要使用 clipChildren
来实现移动 CircularReveal
圆圈的效果,除了关闭按钮外,内容稳定且不会移动。
正如我所猜测的,问题出在剪辑上。 CircularReveal
使用裁剪,clipChildren
也使用它,然后 alpha
使其变脏(黑色)。我无法理解为什么它会在 Android SDK 中发生,但我有一个解决方案:
在不需要时禁用clipChildren
(设置true
)。我是在未公开的动画上做的。结果如下:
P.S。
如果您有更具体的答案并详细说明故障原因,我很乐意将您的答案标记为正确答案。
P.P.S。
对于任何对动画实现感兴趣的人,我 shared it here.
我正在尝试实现动画 shown here。它工作正常,除了 unreveal 动画,显示黑屏片刻。并非所有 devices/api 版本都存在该故障。 Google Nexus 10 (API 22) 的 Genymotion 模拟器确实显示了故障。
Unreveal 使用复杂的动画集:
- 淡化
- 布局移动
- 结束半径小于起始半径的 CircularReveal
- e.t.c.
我尝试将 background
/foreground
/tint
的布局设置为 @null
/@android:color/transparent
和 e.t.c,但是它一点用都没有。
故障仅在代码中同时发生 3 件事时发生:
CircularReveal
项目布局CircularReveal
或其子布局 的淡化布局
- 在显示布局上设置
clipChildren=false
我需要使用 clipChildren
来实现移动 CircularReveal
圆圈的效果,除了关闭按钮外,内容稳定且不会移动。
正如我所猜测的,问题出在剪辑上。 CircularReveal
使用裁剪,clipChildren
也使用它,然后 alpha
使其变脏(黑色)。我无法理解为什么它会在 Android SDK 中发生,但我有一个解决方案:
在不需要时禁用clipChildren
(设置true
)。我是在未公开的动画上做的。结果如下:
P.S。 如果您有更具体的答案并详细说明故障原因,我很乐意将您的答案标记为正确答案。
P.P.S。 对于任何对动画实现感兴趣的人,我 shared it here.