Ios 电话自动完成-AS3

Ios 电话自动完成-AS3,ios,actionscript-3,flash,autocomplete,Ios,Actionscript 3,Flash,Autocomplete,我做了一个自动完成,在swf文件中运行得非常好 非常简单,当用户写第一个字母时,会用文字给出建议 我已经发布了我的IOS项目。 当我在Iphone上尝试时,当我键入第一个字母时,没有任何提示。 我必须写下第一封信,然后点击“回车”以显示建议 我不希望用户为了得到建议而“验证”,而只是简单地键入一封信。 你知道有什么问题吗?有人能帮我吗? 奇怪的是,我在安卓设备上试过,它工作得非常好!(就像我的swf) 这是我的密码: urlLoader.load(new URLRequest("test.tx

我做了一个自动完成,在swf文件中运行得非常好

非常简单,当用户写第一个字母时,会用文字给出建议

我已经发布了我的IOS项目。 当我在Iphone上尝试时,当我键入第一个字母时,没有任何提示。 我必须写下第一封信,然后点击“回车”以显示建议

我不希望用户为了得到建议而“验证”,而只是简单地键入一封信。

你知道有什么问题吗?有人能帮我吗? 奇怪的是,我在安卓设备上试过,它工作得非常好!(就像我的swf)

这是我的密码:

urlLoader.load(new URLRequest("test.txt"));
            urlLoader.addEventListener(Event.COMPLETE, loadComplete);
            inputField.addEventListener(KeyboardEvent.KEY_UP, suggest);

 function loadComplete(e:Event):void
        {
            suggestions = e.target.data.split(",");
        }

         function suggest(e:KeyboardEvent):void
        {
            suggested = [];

            for (var i:int = 0; i < textfields.length; i++)
            {
                removeChild(textfields[i]);
            }

            textfields = [];

            for (var j:int = 0; j < suggestions.length; j++)
            {
                if (suggestions[j].indexOf(inputField.text.toLowerCase()) == 0)
                {
                    var term:TextField = new TextField();
                    term.width = 300;
                    term.height = 20;
                    term.x = 70;
                    term.y = (20 * suggested.length) + 314;
                    term.border = true;
                    term.borderColor = 0x353535;
                    term.background = true;
                    term.backgroundColor = 0xFF9900;
                    term.textColor = 0x4C311D;
                    term.defaultTextFormat = format;

                    term.addEventListener(MouseEvent.MOUSE_UP, useWord);
                    term.addEventListener(MouseEvent.MOUSE_OVER, hover);
                    term.addEventListener(MouseEvent.MOUSE_OUT, out);
                    term.addEventListener(MouseEvent.CLICK, tellMe);

                    addChild(term);
                    textfields.push(term);

                    suggested.push(suggestions[j]);

                    term.text = suggestions[j];
                }

            }

            if (inputField.length == 0)
            {
                suggested = [];

                for (var k:int = 0; k < textfields.length; k++)
                {
                    removeChild(textfields[k]);
                }

                textfields = [];
            }

            if(e.keyCode == Keyboard.DOWN && currentSelection < textfields.length-1)
            {
                currentSelection++;
                textfields[currentSelection].textColor = 0x4C311D;
            }

            if(e.keyCode == Keyboard.UP && currentSelection > 0)
            {
                currentSelection--;
                textfields[currentSelection].textColor = 0x4C311D;
            }

            if(e.keyCode == Keyboard.ENTER)
            {
                inputField.text = textfields[currentSelection].text;

                suggested = [];

                for (var l:int = 0; l < textfields.length; l++)
                {
                    removeChild(textfields[l]);
                }

                textfields = [];
                currentSelection = 0;
            }
        }

         function useWord(e:MouseEvent):void
        {
            inputField.text = e.target.text;

            suggested = [];

            for (var i:int = 0; i < textfields.length; i++)
            {
                removeChild(textfields[i]);
            }

            textfields = [];
        } 

KeyboardEvent.KEY\u UP、KeyboardEvent.KEY\u DOWN、TextEvent.TEXT\u输入在iOS上不起作用。KeyboardEvent.KEY_DOWN仅在某些键上分派。我只看到了键“Enter”。

我对AIR for mobile几乎没有经验,但我认为键盘事件不会在iOS上触发。或者,考虑<代码> StestEXTe>代码>,或者监听<代码>事件。更改< /代码> OK,我会试试。谢谢你是的,在手机上没有键盘事件,而且你使用的是TextField实例,它不是用来在手机上工作的。StageText被用来解决这个问题,并在手机上提供真实的textField行为。同样的事情。我已经制作了一个StageText,但是在IOS上,我必须点击键盘上的“finished”才能看到建议。。。任何其他想法(我已经用新代码编辑了我的帖子)都有效!随着事件的发展,改变!谢谢你们,雅各布和博特马斯特
var myTextField:StageText = new StageText();
         var stageTextInitOptions:StageTextInitOptions;
         var urlLoader:URLLoader = new URLLoader();
         var suggestions:Array = new Array();
         var suggested:Array = new Array();
         var textfields:Array = new Array();
         var format:TextFormat = new TextFormat();
         var currentSelection:int = -1;
         var searchChannel:SoundChannel = new SoundChannel();


            myTextField.returnKeyLabel = ReturnKeyLabel.SEARCH;
            myTextField.addEventListener(KeyboardEvent.KEY_UP, suggest);
            stageTextInitOptions = new StageTextInitOptions(false);
            myTextField = new StageText(stageTextInitOptions);
            myTextField.softKeyboardType = SoftKeyboardType.DEFAULT;
            myTextField.returnKeyLabel = ReturnKeyLabel.DONE;
            myTextField.autoCorrect = true;
            myTextField.fontSize = 20;
            myTextField.color = 0x000000;
            myTextField.fontWeight = "bold";
            myTextField.stage = this.stage;
            myTextField.viewPort = new Rectangle(25, 108, stage.stageWidth-40, 28);



            urlLoader.load(new URLRequest("Sports2.txt"));
            urlLoader.addEventListener(Event.COMPLETE, loadComplete);
            myTextField.addEventListener(KeyboardEvent.KEY_UP, suggest);