blockly > IFocusableTree > getRestoredFocusableNode
متد IFocusableTree.getRestoredFocusableNode().
IFocusableNode این درخت را برمیگرداند که باید فوکوس فعال را دریافت کند زمانی که خود درخت فوکوس را به آن بازگرداند.
نکات بسیار مهمی وجود دارد که باید در مورد چرخه عمر فوکوس یک درخت در هنگام اجرای نسخه ای از این روش که null را برنمی گرداند در نظر گرفت: 1. یک پیشین گره خالی، حالت فوکوس برای اولین بار را تضمین نمی کند زیرا گره ها می توانند حذف شوند. 2. این روش تنها زمانی استفاده میشود که خود درخت، از طریق پیمایش تب یا از طریق () FocusManager.focusTree متمرکز باشد. در بسیاری از موارد، گره متمرکز قبلی مستقیماً به جای آن متمرکز می شود که این روش را دور می زند. 3. رفتار پیش فرض (یعنی برگرداندن null در اینجا) شامل بازیابی گره قبلی (previousNode) یا تمرکز ریشه درخت است. 4. گره ارائه شده ممکن است گاهی اوقات دیگر معتبر نباشد، مثلاً در موردی که سعی می شود گره ای را که اخیراً از درخت مادرش حذف شده است متمرکز کنیم. پیادهسازیها میتوانند اعتبار گره را بررسی کنند تا گرهی را که تمرکز باید به آن بازگردد، تخصصی کنند.
این روش تا حد زیادی در نظر گرفته شده است تا پیاده سازی های درختی را با ابزاری برای تعیین یک گره پیش فرض بهتر از ریشه آنها فراهم کند.
امضا:
getRestoredFocusableNode(previousNode: IFocusableNode | null): IFocusableNode | null;
پارامترها
پارامتر | تایپ کنید | توضیحات |
---|---|---|
گره قبلی | IFocusableNode | تهی | گرهای که قبلاً فوکوس غیرفعال را برای این درخت نگه میداشت، یا اگر درخت هنوز فوکوس نشده باشد، تهی است. |
برمی گرداند:
IFocusableNode | تهی
IFocusableNode که اکنون باید فوکوس دریافت کند، یا اگر رفتار پیشفرض باید استفاده شود، تهی میشود.