현재까지는 완벽한 대안은 없는거 같습니다.

희덕님이 제안하신 방법도 좋습니다.

(희덕님이 찾은 방법 : http://adnaru.com/100)

(에이레네님이 제안하는 방법 : http://joshy21.com/weblog/47)

제가 제안하는 방법은 클래스 추가 없이 메소드로 해결하는 방법입니다.

직접 AIR fla 1프레임에 아래 코드 넣고 돌려보시면 테스트할 수 있는 코드입니다.

var txt: TextField = new TextField();
txt.type = "input";
txt.width = stage.stageWidth;
txt.height = stage.stageHeight;
txt.addEventListener( "keyDown", keyDown );

addChild( txt );

stage.focus = txt;

IME.conversionMode = "KOREAN";

function keyDown( e: KeyboardEvent ): void
{
     if( e.keyCode == Keyboard.BACKSPACE )
          txt.setSelection( txt.selectionEndIndex + 1, txt.selectionEndIndex + 1 );
}

삭제되는 순서입니다.



아직도 백스페이스를 한번 더 눌러야하긴 하지만 그 이상은 방법이 없는듯 합니다.

TextUtil


혹시 다른 좋은 방법 알고 계시는 분은 댓글 주시기 바랍니다.

책에 실릴 내용입니다. 책에 싣게 될 때는 반드시 알릴겁니다^^


저작자 표시 비영리 동일 조건 변경 허락
신고
  1. Favicon of http://adnaru.tistory.com 희희덕 2008.12.02 21:32 신고

    아.. Flash의 TextField에서도 저런 문제가 있었네요..
    (htmlloader의 textinput에서는 저런 문제가 없었는데..)
    유틸로 적용하시다니, 멋지십니다!

    • Favicon of http://wooyaggo.tistory.com 우야꼬  2008.12.03 13:44 신고

      다 게을러서 그러지요 ㅎㅎ
      OOP란 정의도 개발자들이 부지런했으면 안나타났을 듯 ㅋ

+ Recent posts