public static void DumpStructure(AssistStructure structure) { int nodeCount = structure.WindowNodeCount; Log.Verbose(TAG, "dumpStructure(): component=" + structure.ActivityComponent + " numberNodes=" + nodeCount); for (int i = 0; i < nodeCount; i++) { Log.Verbose(TAG, "node #" + i); AssistStructure.WindowNode node = structure.GetWindowNodeAt(i); DumpNode(" ", node.RootViewNode); } }
/** * Gets a node if it matches the filter criteria for the given id. */ public static AssistStructure.ViewNode FindNodeByFilter([NonNull] AssistStructure structure, [NonNull] object id, [NonNull] NodeFilter filter) { Logv("Parsing request for activity %s", structure.ActivityComponent); int nodes = structure.WindowNodeCount; for (int i = 0; i < nodes; i++) { AssistStructure.WindowNode windowNode = structure.GetWindowNodeAt(i); AssistStructure.ViewNode rootNode = windowNode.RootViewNode; AssistStructure.ViewNode node = FindNodeByFilter(rootNode, id, filter); if (node != null) { return(node); } } return(null); }