我正在 Google App Maker 中创建自定义确认对话框,并希望使用“确认”按钮来调用传入的函数。我在按钮小部件中没有看到“onclick”事件。关于如何执行此操作有什么建议吗?
function confirmationDialog(msg, confirmFunction)
{
var desc = app.pageFragments.ConfirmationDialog.descendants;
var label = desc.Label;
var confirmButton = desc.Confirm;
label.text = msg;
confirmButton.onClick = confirmFunction; // does not work
app.showDialog(app.pageFragments.ConfirmationDialog);
}
Thanks
如果这更容易一点那就太好了,但最好的选择是使用自定义属性(https://developers.google.com/appmaker/ui/viewfragments).
您可以设置“Dynamic”类型的自定义属性并将其命名为任何名称,例如“onConfirmCallback”。然后您可以在该自定义属性上设置该函数:
调用对话框的代码:
app.pageFragments.ConfirmationDialog.properties.onConfirmCallback = function(param) {
alert(param);
};
app.showDialog(app.pageFragments.ConfirmationDialog);
然后在 onClick 中关闭按钮:
app.pageFragments.ConfirmationDialog.properties.onConfirmCallback("hi");
app.closeDialog();
另请注意,设置标签的方法比示例中的方法稍微好一些,也可以使用自定义属性。
为您想要自定义的任何小部件属性创建自定义属性,然后将这些自定义属性 (@properties.propertyName) 绑定到小部件属性。例如,您可能有一个confirmText属性,其中确认按钮文本属性boudn为@properties.confirmText。
然后,当您调用对话框时,您只需设置这些自定义属性即可。使用所有内容的属性快速修改示例代码:
function confirmationDialog(msg, confirmFunction)
{
var properties = app.pageFragments.ConfirmationDialog.properties;
properties.text = msg;
properties.confirmCallback = confirmFunction;
app.showDialog(app.pageFragments.ConfirmationDialog);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)