【发布时间】:2017-08-22 04:12:52
【问题描述】:
-
创建一个ripple.xml
将drawable设置为
ImageView
我发现圆圈在当前ImageView之外绘制
这是如何工作的
【问题讨论】:
创建一个ripple.xml
将drawable设置为ImageView
我发现圆圈在当前ImageView之外绘制
这是如何工作的
【问题讨论】:
原因是硬件加速,见RippleDrawable中的函数isProjected()。
如果isProjected() 返回true,DislayList 将持有这个RenderNode
(见http://androidxref.com/7.1.1_r6/xref/frameworks/base/libs/hwui/DisplayListCanvas.cpp#addRenderNodeOp)
【讨论】:
最简单的方法 - 将 ImageView 放在更大的布局中,并将波纹应用于布局。
【讨论】:
canvas in RippleDrawable belone to ImageView