Событие текстовой ссылки Flext не срабатывает, пока вы не нажмете на него дважды - PullRequest
0 голосов
/ 22 июня 2010

У меня есть холст, в котором у меня есть список. Средство визуализации для этого списка вызывает поле «Текст» с элементом «ссылка» этого поля, установленным на функцию. «HtmlText» поля динамически устанавливается на смесь слов и ссылок. По сути, функция проверяет, какой тег в htmlText был выбран, и выполняет соответствующее событие.

Однако, чтобы что-то произошло, вам нужно дважды щелкнуть ссылку. Во время отладки кода я заметил, что функция, на которую ссылается элемент «ссылка», фактически даже не вызывается до 2-го щелчка. Есть идеи?

<mx:Text 
  id="textCanvas" 
  width="100%" 
  color="0x323232" 
  selectable="true" 
  link="{lbl_link(event)}" /> 

Я немного изменил код, чтобы его было легче понять, но код ActionScript выглядит примерно так:

private function creationComplete():void { 
  textCanvas.htmlText = "Hello <a href='event:username'>" + username + "</a>"; 
} 

private function lbl_link(evt:TextEvent):void { 
  if( evt.text ){ 
    switch( evt.text ) { 
      case "username": [[DO SOMETHING]]
    }
  }
} 

1 Ответ

0 голосов
/ 01 февраля 2012

Возможно, проблема в том, что вы связываете обработчик событий. Не то, чтобы это уже было 2 года спустя ...

...