我目前正在使用ActionScript 3(使用FlashPunk)开发游戏,并且由于FP在处理输入(〜,^,ã等)方面的限制,我最终不得不使用AS 3的本机TextField类。通过我捕获文本,将其发送到我在FlashPunk中的一个实体,并让它将文本呈现为图形(对于文本气球)。
我的问题是:有没有办法让TextField对象不可见但仍然可以交互?我想要做的是:让TextField对象具有焦点而无需用户点击它(它不会出现在屏幕上,也不是它的文本,但它必须捕获打字文本)。它可以通过纯粹的代码吗?提前谢谢。
答案 0 :(得分:1)
您可以通过stage.focus = textFieldInstance;
(adobe reference)执行此操作。至于让它看不见......
可以使用各种技巧
textfield.width = 0
setTextFormat
,其字体大小为0 ... 当然,还有textField.visible = false
,但是有很多与之相关的东西会破坏我们想要实现的目标。
虽然谷歌搜索我发现有些人只是在使用stage.focus
时遇到了麻烦,所以如果这不起作用,试试这个(original source):
myTF.type="input";
myTF.text=" "; //a SPACE or temp "foo" text, but NOT empty !
myTF.stage.focus = myTF;
myTF.setSelection(myTF.length,myTF.length);
myTF.text = "";