Build 1.0_r1(from source)

android.view
Interface ViewParent

All Known Implementing Classes:
AbsListView, AbsoluteLayout, AbsSpinner, AdapterView, DatePicker, DialerFilter, ExpandableListView, FrameLayout, Gallery, GridView, ImageSwitcher, LinearLayout, ListView, MediaController, RadioGroup, RelativeLayout, ScrollView, Spinner, TabHost, TableLayout, TableRow, TabWidget, TextSwitcher, TimePicker, TwoLineListItem, ViewAnimator, ViewFlipper, ViewGroup, ViewRoot, ViewSwitcher, WebView, ZoomControls

public interface ViewParent

Defines the responsibilities for a class that will be a parent of a View. This is the API that a view sees when it wants to interact with its parent.


Method Summary
 void bringChildToFront(View child)
          Change the z order of the child so it's on top of all other children
 void childDrawableStateChanged(View child)
          This method is called on the parent when a child's drawable state has changed.
 void clearChildFocus(View child)
          Called when a child of this parent is giving up focus
 void createContextMenu(ContextMenu menu)
          Have the parent populate the specified context menu if it has anything to add (and then recurse on its parent).
 void focusableViewAvailable(View v)
          Tells the parent that a new focusable view has become available.
 View focusSearch(View v, int direction)
          Find the nearest view in the specified direction that wants to take focus
 boolean getChildVisibleRect(View child, Rect r, Point offset)
           
 ViewParent getParent()
          Returns the parent if it exists, or null.
 void invalidateChild(View child, Rect r)
          All or part of a child is dirty and needs to be redrawn.
 ViewParent invalidateChildInParent(int[] location, Rect r)
          All or part of a child is dirty and needs to be redrawn.
 boolean isLayoutRequested()
          Indicates whether layout was requested on this view parent.
 void recomputeViewAttributes(View child)
          Tell view hierarchy that the global view attributes need to be re-evaluated.
 void requestChildFocus(View child, View focused)
          Called when a child of this parent wants focus
 void requestDisallowInterceptTouchEvent(boolean disallowIntercept)
          Called when a child does not want this parent and its ancestors to intercept touch events with ViewGroup.onInterceptTouchEvent(MotionEvent).
 void requestLayout()
          Called when something has changed which has invalidated the layout of a child of this view parent.
 void requestTransparentRegion(View child)
          Called when a child wants the view hierarchy to gather and report transparent regions to the window compositor.
 boolean showContextMenuForChild(View originalView)
          Bring up a context menu for the specified view or its ancestors.
 

Method Detail

requestLayout

void requestLayout()
Called when something has changed which has invalidated the layout of a child of this view parent. This will schedule a layout pass of the view tree.


isLayoutRequested

boolean isLayoutRequested()
Indicates whether layout was requested on this view parent.

Returns:
true if layout was requested, false otherwise

requestTransparentRegion

void requestTransparentRegion(View child)
Called when a child wants the view hierarchy to gather and report transparent regions to the window compositor. Views that "punch" holes in the view hierarchy, such as SurfaceView can use this API to improve performance of the system. When no such a view is present in the hierarchy, this optimization in unnecessary and might slightly reduce the view hierarchy performance.

Parameters:
child - the view requesting the transparent region computation

invalidateChild

void invalidateChild(View child,
                     Rect r)
All or part of a child is dirty and needs to be redrawn.

Parameters:
child - The child which is dirty
r - The area within the child that is invalid

invalidateChildInParent

ViewParent invalidateChildInParent(int[] location,
                                   Rect r)
All or part of a child is dirty and needs to be redrawn. The location array is an array of two int values which respectively define the left and the top position of the dirty child. This method must return the parent of this ViewParent if the specified rectangle must be invalidated in the parent. If the specified rectangle does not require invalidation in the parent or if the parent does not exist, this method must return null. When this method returns a non-null value, the location array must have been updated with the left and top coordinates of this ViewParent.

Parameters:
location - An array of 2 ints containing the left and top coordinates of the child to invalidate
r - The area within the child that is invalid
Returns:
the parent of this ViewParent or null

getParent

ViewParent getParent()
Returns the parent if it exists, or null.

Returns:
a ViewParent or null if this ViewParent does not have a parent

requestChildFocus

void requestChildFocus(View child,
                       View focused)
Called when a child of this parent wants focus

Parameters:
child - The child of this ViewParent that wants focus. This view will contain the focused view. It is not necessarily the view that actually has focus.
focused - The view that is a descendant of child that actually has focus

recomputeViewAttributes

void recomputeViewAttributes(View child)
Tell view hierarchy that the global view attributes need to be re-evaluated.

Parameters:
child - View whose attributes have changed.

clearChildFocus

void clearChildFocus(View child)
Called when a child of this parent is giving up focus

Parameters:
child - The view that is giving up focus

getChildVisibleRect

boolean getChildVisibleRect(View child,
                            Rect r,
                            Point offset)

focusSearch

View focusSearch(View v,
                 int direction)
Find the nearest view in the specified direction that wants to take focus

Parameters:
v - The view that currently has focus
direction - One of FOCUS_UP, FOCUS_DOWN, FOCUS_LEFT, and FOCUS_RIGHT

bringChildToFront

void bringChildToFront(View child)
Change the z order of the child so it's on top of all other children

Parameters:
child -

focusableViewAvailable

void focusableViewAvailable(View v)
Tells the parent that a new focusable view has become available. This is to handle transitions from the case where there are no focusable views to the case where the first focusable view appears.

Parameters:
v - The view that has become newly focusable

showContextMenuForChild

boolean showContextMenuForChild(View originalView)
Bring up a context menu for the specified view or its ancestors.

In most cases, a subclass does not need to override this. However, if the subclass is added directly to the window manager (for example, ViewManager.addView(View, android.view.ViewGroup.LayoutParams)) then it should override this and show the context menu.

Parameters:
originalView - The source view where the context menu was first invoked
Returns:
true if a context menu was displayed

createContextMenu

void createContextMenu(ContextMenu menu)
Have the parent populate the specified context menu if it has anything to add (and then recurse on its parent).

Parameters:
menu - The menu to populate

childDrawableStateChanged

void childDrawableStateChanged(View child)
This method is called on the parent when a child's drawable state has changed.

Parameters:
child - The child whose drawable state has changed.

requestDisallowInterceptTouchEvent

void requestDisallowInterceptTouchEvent(boolean disallowIntercept)
Called when a child does not want this parent and its ancestors to intercept touch events with ViewGroup.onInterceptTouchEvent(MotionEvent).

This parent should pass this call onto its parents. This parent must obey this request for the duration of the touch (that is, only clear the flag after this parent has received an up or a cancel.

Parameters:
disallowIntercept - True if the child does not want the parent to intercept touch events.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature