Я написал несколько пользовательских компонентов во Flex 4 и несколько раз сталкивался с этой проблемой.
var myForm:MyForm = new MyForm;
myForm.SetData(data);
addElement(myForm);
Теперь представьте, что я вызываю эти функции из неконструктивной функции Panel или VGroup (или любого другого контейнера). Досадно, что во время MyForm.SetData () не все объявленные там поля myForm еще инициализированы. Такие как:
<s:VGroup id="dataGroup">
Если моя функция SetData () хочет получить доступ к dataGroup (по причине того, что .addElement () только что полученные данные к ней), она просто завершается с ошибкой nullpointer, поскольку dataGroup еще не создана, несмотря на то, что после конструктор Как можно гарантировать, что форма была полностью инициализирована?