Flex 3 - фокус ввода / вывода из TextInput - PullRequest
0 голосов
/ 27 января 2012

Я пытаюсь реализовать Focus In / Out из TextInput во Flex 3. Я использую контроллер для обработки всех событий компонентов, и моя идея состоит в том, чтобы иметь оператор switch для «перенаправления» в соответствующий метод, в зависимости отна цель.Мой TextInput имеет идентификатор «contactInput», однако цель события имеет что-то вроде «MainView0.topContainer.contactInput.UITextField8».Откуда этот UITextField8?Я не могу выбрать только через "contactInput"?Это мой код, в приложении я определяю focusIn / focusOut для всех событий:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                xmlns:ui="ui.*"
                xmlns:ws="ui.presenters.*"
                xmlns:components="ui.components.*"
                width="255" height="310" minWidth="255" minHeight="310"
                creationComplete="controller.init(event)"                       
                styleName="application" 
                        applicationComplete="controller.init(event)"
                        focusIn="controller.focusIn(event)"
                focusOut="controller.focusOut(event)"

Код моего контроллера:

 public function focusIn(event:FocusEvent):void {                   
        Alert.show("focus in -> target: " + event.target);

        switch (event.target) {
            case view.contactInput:             
                onContactInputFocusIn();
                break;
        }
    }

     public function focusOut(event:Event):void {
        Alert.show("focus out -> target: " + event.target);

        switch (event.target) {

            case view.contactInput:
                onContactInputFocusOut();
                break;          
        }

Что-то не так в этом коде?я просто запутался.

1 Ответ

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

Попробуйте поместить функцию Alert.show между case и функцией onContactInputFocusOut (). поместите Alert.show в обе функции, а затем проверьте, вошел ли он в инструкцию case или нет ...

...