View.DragShadowBuilder

Creates an image that the system displays during the drag and drop
operation. This is called a "drag shadow". The default implementation
for a DragShadowBuilder based on a View returns an image that has exactly the same
appearance as the given View. The default also positions the center of the drag shadow
directly under the touch point. If no View is provided (the constructor with no parameters
is used), and onProvideShadowMetrics() and
onDrawShadow() are not overridden, then the
default is an invisible drag shadow.

You are not required to use the View you provide to the constructor as the basis of the
drag shadow. The onDrawShadow() method allows you to draw
anything you want as the drag shadow.

You pass a DragShadowBuilder object to the system when you start the drag. The system
calls onProvideShadowMetrics() to get the
size and position of the drag shadow. It uses this data to construct a
Canvas object, then it calls onDrawShadow()
so that your application can draw the shadow image in the Canvas.

Developer Guides

For a guide to implementing drag and drop features, read the
Drag and Drop developer guide.

Causes the current thread to wait until another thread invokes the
notify() method or the
notifyAll() method for this object, or
some other thread interrupts the current thread, or a certain
amount of real time has elapsed.

View.DragShadowBuilder

Construct a shadow builder object with no associated View. This
constructor variant is only useful when the onProvideShadowMetrics(Point, Point)
and onDrawShadow(Canvas) methods are also overridden in order
to supply the drag shadow's dimensions and appearance without
reference to any View object.

onProvideShadowMetrics

Provides the metrics for the shadow image. These include the dimensions of
the shadow image, and the point within that shadow that should
be centered under the touch location while dragging.

The default implementation sets the dimensions of the shadow to be the
same as the dimensions of the View itself and centers the shadow under
the touch point.

Parameters

outShadowSize

Point: A Point containing the width and height
of the shadow image. Your application must set Point.x to the
desired width and must set Point.y to the desired height of the
image.

outShadowTouchPoint

Point: A Point for the position within the
shadow image that should be underneath the touch point during the drag and drop
operation. Your application must set Point.x to the
X coordinate and Point.y to the Y coordinate of this position.