Appcelerator android中的“按键事件”在iphone模拟器中无法正常工作的地方

时间:2018-11-29 13:59:42

标签: titanium appcelerator appcelerator-titanium

我引用了正式的appcelerator网站,并在“文本字段”中实现了将“ focusable”属性设置为true并添加了按下事件的功能,但是该按钮不起作用。请提供详细的解决方案吗? / strong>

index.xml:

<Text Field   id="txt_field" focusable = true/>

index.js:

$.txt_field.addEventListener('keypressed',function({

*********my code***********
});

1 个答案:

答案 0 :(得分:1)

首先,您的xml中似乎有一个空格,不确定是否是错字。应该是这样:

<TextField  id="txt_field" focusable="true" />

接下来,keypressed事件仅适用于硬件键。如果您只想知道输入了一个新字符,则应使用change事件。

最佳做法是也将事件侦听器添加到xml,并且不要在javascript中添加它们

<TextField  id="txt_field" focusable="true" onChange="changeTextField" />

然后,您需要在控制器中创建一个changeTextField函数:

function changeTextField(e) {
    // the textfield will be in e.source
    // the new value of the textfield will be in e.value
}

基于此,您可以检查e.value并查看与上次更改相对的更改。