顯然,我無法在NativeScript的documentation或API reference TextFields元素中找到焦點事件處理程序。我錯了嗎?有沒有辦法將onFocus事件綁定到NativeScript中的TextField上?
或者,有沒有辦法引入擴展現有Nativescript元素的onFocus事件?
(我用的打字稿無角2)
顯然,我無法在NativeScript的documentation或API reference TextFields元素中找到焦點事件處理程序。我錯了嗎?有沒有辦法將onFocus事件綁定到NativeScript中的TextField上?
或者,有沒有辦法引入擴展現有Nativescript元素的onFocus事件?
(我用的打字稿無角2)
您可以使用所提到的here方法on
。我不知道如果這是你在找什麼,但這裏有一個例子:
在XML:
<TextView id="textfield" textWrap="true" tap="textfieldTap"/>
在js文件:
var myTextfield = page.getViewById("textfield");
myTextfield.on("tap", function() {
console.log("Hello from the other side");
});
此外,還有另一種方式在TextField上收聽焦點事件。正如我們的XML文本字段標籤內的tap="textfieldTap"
,那麼我們就可以宣佈在js的功能來收聽事件:
function textfieldTap(args) {
console.log("Textfield tap " + args.text);
}
exports.textfieldTap = textfieldTap;
好吧,所以實際上並沒有一個'focus'事件,但我可以使用Tap並在獲得鍵盤焦點時做一些事情(它實際上並不相同,但對於我的情況就足夠了)。 – christo
A PR for adding focus
正在等待審覈。不久之後,您就可以在TextField
和TextView
元素上使用它!
2017年8月25日在NativeScript中引入了焦點事件處理程序 https://github.com/NativeScript/NativeScript/pull/4730#event-1221079664 – christo