ShadowDrawable

constructor(ownerView: View, isClipped: Boolean)

The base constructor for all API levels requires an ownerView in order to be able to hook into the hardware-accelerated draw routine.

This View must be attached to the on-screen hierarchy; usually, it's just the one in which the draw happens.

isClipped determines whether the drawable will draw a clipped or a regular shadow, the latter being useful when color compat is needed without the clip. Clipped instances with irregular shapes on API levels 30+ require that the shape Path be set manually through setClipPathProvider.

It is rather important to dispose of these instances when appropriate.


@RequiresApi(value = 29)
constructor(isClipped: Boolean)

At API level 29, an owner View is not required, but color compat is unavailable for these instances.

isClipped determines whether the drawable will draw a clipped or a regular shadow, the latter being useful when color compat is needed without the clip. Clipped instances with irregular shapes on API levels 30+ require that the shape Path be set manually through setClipPathProvider.

It is not necessary to call dispose on these instances, but it is safe to do so.