ViewGroupCompat
public
final
class
ViewGroupCompat
extends Object
java.lang.Object | |
↳ | androidx.core.view.ViewGroupCompat |
Helper for accessing features in ViewGroup
.
Summary
Constants | |
---|---|
int |
LAYOUT_MODE_CLIP_BOUNDS
This constant is a |
int |
LAYOUT_MODE_OPTICAL_BOUNDS
This constant is a |
Public methods | |
---|---|
static
int
|
getLayoutMode(ViewGroup group)
Returns the basis of alignment during layout operations on this ViewGroup:
either |
static
int
|
getNestedScrollAxes(ViewGroup group)
Return the current axes of nested scrolling for this ViewGroup. |
static
boolean
|
isTransitionGroup(ViewGroup group)
Returns true if this ViewGroup should be considered as a single entity for removal when executing an Activity transition. |
static
boolean
|
onRequestSendAccessibilityEvent(ViewGroup group, View child, AccessibilityEvent event)
This method is deprecated.
Use |
static
void
|
setLayoutMode(ViewGroup group, int mode)
Sets the basis of alignment during the layout of this ViewGroup. |
static
void
|
setMotionEventSplittingEnabled(ViewGroup group, boolean split)
This method is deprecated.
Use |
static
void
|
setTransitionGroup(ViewGroup group, boolean isTransitionGroup)
Changes whether or not this ViewGroup should be treated as a single entity during Activity Transitions. |
Inherited methods | |
---|---|
Constants
LAYOUT_MODE_CLIP_BOUNDS
public static final int LAYOUT_MODE_CLIP_BOUNDS
This constant is a layoutMode
.
Clip bounds are the raw values of left
,
top
,
right
and bottom
.
Constant Value: 0 (0x00000000)
LAYOUT_MODE_OPTICAL_BOUNDS
public static final int LAYOUT_MODE_OPTICAL_BOUNDS
This constant is a layoutMode
.
Optical bounds describe where a widget appears to be. They sit inside the clip
bounds which need to cover a larger area to allow other effects,
such as shadows and glows, to be drawn.
Constant Value: 1 (0x00000001)
Public methods
getLayoutMode
public static int getLayoutMode (ViewGroup group)
Returns the basis of alignment during layout operations on this ViewGroup:
either LAYOUT_MODE_CLIP_BOUNDS
or LAYOUT_MODE_OPTICAL_BOUNDS
.
If no layoutMode was explicitly set, either programmatically or in an XML resource,
the method returns the layoutMode of the view's parent ViewGroup if such a parent exists,
otherwise the method returns a default value of LAYOUT_MODE_CLIP_BOUNDS
.
Parameters | |
---|---|
group |
ViewGroup |
Returns | |
---|---|
int |
the layout mode to use during layout operations |
See also:
getNestedScrollAxes
public static int getNestedScrollAxes (ViewGroup group)
Return the current axes of nested scrolling for this ViewGroup.
A ViewGroup returning something other than ViewCompat.SCROLL_AXIS_NONE
is
currently acting as a nested scrolling parent for one or more descendant views in
the hierarchy.
Parameters | |
---|---|
group |
ViewGroup |
Returns | |
---|---|
int |
Flags indicating the current axes of nested scrolling |
isTransitionGroup
public static boolean isTransitionGroup (ViewGroup group)
Returns true if this ViewGroup should be considered as a single entity for removal when executing an Activity transition. If this is false, child elements will move individually during the transition.
Parameters | |
---|---|
group |
ViewGroup |
Returns | |
---|---|
boolean |
onRequestSendAccessibilityEvent
public static boolean onRequestSendAccessibilityEvent (ViewGroup group, View child, AccessibilityEvent event)
This method is deprecated.
Use ViewGroup.onRequestSendAccessibilityEvent(View, AccessibilityEvent)
directly.
Called when a child has requested sending an AccessibilityEvent
and
gives an opportunity to its parent to augment the event.
If an AccessibilityDelegateCompat
has been specified via calling
ViewCompat.setAccessibilityDelegate(View, AccessibilityDelegateCompat)
its
AccessibilityDelegateCompat.onRequestSendAccessibilityEvent(ViewGroup, View, AccessibilityEvent)
is responsible for handling this call.
Parameters | |
---|---|
group |
ViewGroup : The group whose method to invoke. |
child |
View : The child which requests sending the event. |
event |
AccessibilityEvent : The event to be sent. |
Returns | |
---|---|
boolean |
True if the event should be sent. |
setLayoutMode
public static void setLayoutMode (ViewGroup group, int mode)
Sets the basis of alignment during the layout of this ViewGroup.
Valid values are either LAYOUT_MODE_CLIP_BOUNDS
or
LAYOUT_MODE_OPTICAL_BOUNDS
.
Parameters | |
---|---|
group |
ViewGroup |
mode |
int : the layout mode to use during layout operations |
See also:
setMotionEventSplittingEnabled
public static void setMotionEventSplittingEnabled (ViewGroup group, boolean split)
This method is deprecated.
Use ViewGroup.setMotionEventSplittingEnabled(boolean)
directly.
Enable or disable the splitting of MotionEvents to multiple children during touch event dispatch. This behavior is enabled by default for applications that target an SDK version of 11 (Honeycomb) or newer. On earlier platform versions this feature was not supported and this method is a no-op.
When this option is enabled MotionEvents may be split and dispatched to different child views depending on where each pointer initially went down. This allows for user interactions such as scrolling two panes of content independently, chording of buttons, and performing independent gestures on different pieces of content.
Parameters | |
---|---|
group |
ViewGroup : ViewGroup to modify |
split |
boolean : true to allow MotionEvents to be split and dispatched to multiple
child views. false to only allow one child view to be the target of
any MotionEvent received by this ViewGroup. |
setTransitionGroup
public static void setTransitionGroup (ViewGroup group, boolean isTransitionGroup)
Changes whether or not this ViewGroup should be treated as a single entity during Activity Transitions.
Parameters | |
---|---|
group |
ViewGroup |
isTransitionGroup |
boolean : Whether or not the ViewGroup should be treated as a unit
in Activity transitions. If false, the ViewGroup won't transition,
only its children. If true, the entire ViewGroup will transition
together.
|