findViewByKey static method

BuildContext? findViewByKey(
  1. String key,
  2. BuildContext context
)

Implementation

static BuildContext? findViewByKey(String key, BuildContext context) {
  BuildContext? result;
  final visitedElements = <Element>{};
  void searchForWidget(Element element) {
    if (!visitedElements.contains(element)) {
      visitedElements.add(element);
      if (element.widget.key.toString().contains("<'") &&
          element.widget.key.toString().contains("'>")) {
        if (element.widget.key?.toString() == key) {
          result = element;
          return;
        }
      }
      element.visitChildElements(searchForWidget);
    }
  }

  context.visitChildElements(searchForWidget);
  return result;
}