блочно > IFocusableTree > getRestoredFocusableNode

Метод IFocusableTree.getRestoredFocusableNode()

Возвращает IFocusableNode этого дерева, который должен получить активный фокус, когда фокус возвращается к самому дереву.

Есть несколько очень важных замечаний, которые следует учитывать о жизненном цикле фокуса дерева при реализации версии этого метода, которая не возвращает null: 1. Нулевой previousNode не гарантирует первоначального состояния фокуса, так как узлы могут быть удалены. 2. Этот метод используется только тогда, когда само дерево находится в фокусе, либо через навигацию по вкладкам, либо через FocusManager.focusTree(). Во многих случаях ранее сфокусированный узел будет напрямую сфокусирован, что обойдет этот метод. 3. Поведение по умолчанию (т. е. возврат null здесь) подразумевает либо восстановление предыдущего узла (previousNode), либо фокусировку корня дерева. 4. Предоставленный узел иногда может быть недействительным, например, в случае попытки сфокусировать узел, который был недавно удален из родительского дерева. Реализации могут проверять действительность узла, чтобы специализировать узел, на который должен вернуться фокус.

Этот метод в значительной степени предназначен для предоставления реализациям деревьев средств указания лучшего узла по умолчанию, чем их корень.

Подпись:

getRestoredFocusableNode(previousNode: IFocusableNode | null): IFocusableNode | null;

Параметры

Параметр Тип Описание
предыдущийУзел IFocusableNode | нуль Узел, который ранее удерживал пассивный фокус для этого дерева, или null, если дерево еще не было сфокусировано.

Возврат:

IFocusableNode | нуль

IFocusableNode, который теперь должен получать фокус, или null, если вместо этого следует использовать поведение по умолчанию.