Есть ли в Flash Builder 4.5 какая-либо причина, почему представление «Дизайн» неправильно отображает простой ярлык? - PullRequest
0 голосов
/ 13 августа 2011

Вопрос: Я попробовал очень простой код, приведенный ниже, на основе фрагмента учебного кода, где я создаю метку под названием «заголовок» с MXML, но использую Actionscript для установки headline.text = "ABC".

Когда я пользуюсь браузером, я вижу желаемый результат Actionscript - на странице отображается текст «ABC». Но когда я использую представление «Дизайн», в этом месте просто отображается пустой / белый квадрат.

Я хочу опубликовать скриншот, но это мой первый день на этом сайте, и у меня пока нет необходимой 10 репутации.

Соответствующая выдержка из кода:

    <fx:Script>
    <![CDATA[
        import mx.events.FlexEvent;

        protected function application1_creationCompleteHandler(event:FlexEvent):void
        {
            headline.text="ABC";
        }
    ]]>
     </fx:Script>
     <s:Label id="headline" fontSize="36" x="10" y="10" color="#FFFFFF" />

Ответ:

Поскольку creationCompleteHandler - это событие, которое должно быть завершено только при РЕАЛЬНОМ выполнении / загрузке приложения, код внутри этой функции правильно выполнялся в браузере (где приложение будет ДЕЙСТВИТЕЛЬНО выполняться), а не в представлении «Дизайн». (где это будет псевдо-выполнено)

1 Ответ

0 голосов
/ 13 августа 2011

Почему бы не установить текст прямо в метке:

 <s:Label id="headline" fontSize="36" x="10" y="10" color="#FFFFFF" text="ABC" />

Или используйте привязку:

 <fx:Script>
     <![CDATA[
         [Bindable] public var headlineText:String = "ABC";
     ]]>
 </fx:Script>

 <s:Label text="{headlineText}" id="headline" fontSize="36" x="10" y="10" color="#FFFFFF" />
...