Package io.flutter.util
Class ViewUtils
java.lang.Object
io.flutter.util.ViewUtils
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
static interface
Allows to visit a view. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
calculateMaximumDisplayMetrics
(Context context, ViewUtils.DisplayUpdater updater) Calculates the maximum display metrics for the given context, and pushes the metric data to the updater.static boolean
childHasFocus
(View root) Determines if the current view or any descendant view has focus.static Activity
getActivity
(Context context) static boolean
hasChildViewOfType
(View root, Class<? extends View>[] viewTypes) Returns true if the root or any child view is an instance of the given types.static boolean
traverseHierarchy
(View root, ViewUtils.ViewVisitor visitor) Traverses the view hierarchy in pre-order and runs the visitor for each child view including the root view.
-
Constructor Details
-
ViewUtils
public ViewUtils()
-
-
Method Details
-
calculateMaximumDisplayMetrics
public static void calculateMaximumDisplayMetrics(@Nullable Context context, @NonNull ViewUtils.DisplayUpdater updater) Calculates the maximum display metrics for the given context, and pushes the metric data to the updater. -
getActivity
Retrieves theActivity
from a givenContext
.This method will recursively traverse up the context chain if it is a
ContextWrapper
until it finds the first instance of the base context that is anActivity
. -
childHasFocus
Determines if the current view or any descendant view has focus.- Parameters:
root
- The root view.- Returns:
- True if the current view or any descendant view has focus.
-
hasChildViewOfType
Returns true if the root or any child view is an instance of the given types.- Parameters:
root
- The root view.viewTypes
- The types of views.- Returns:
- true if any child view is an instance of any of the given types.
-
traverseHierarchy
public static boolean traverseHierarchy(@Nullable View root, @NonNull ViewUtils.ViewVisitor visitor) Traverses the view hierarchy in pre-order and runs the visitor for each child view including the root view.If the visitor returns true, the traversal stops, and the method returns true.
If the visitor returns false, the traversal continues until all views are visited.
- Parameters:
root
- The root view.visitor
- The visitor.- Returns:
- true if the visitor returned true for a given view.
-