我们正在构建一个适用于android、iOS和windows phone的相当简单的应用程序,于是我们决定使用Titanium。
事实证明,Windows Phone目前的支持情况似乎相当糟糕。因为我们需要在所有三个平台上都有一个功能齐全的地图,所以我们选择了集成WebView/leaflet
地图。通信是通过文档建议的Ti.App.fireEvent
和Ti.App.addEventListener
完成的,它们在iOS和安卓上工作没有问题,但我们有一个问题,windows phone没有注册任何事件或在WebView中加载的应用程序和网页之间发送任何事件。
面对这个问题,我们会错过什么呢?
(使用的SDK是最新的so 5.1.2,windows 8.1)
发布于 2016-02-03 19:11:12
你能使用下面的示例代码吗?
"logging.html“
<html>
<head>
<script>
Ti.App.addEventListener("app:fromTitanium", function(e) {
alert(e.message);
});
</script>
</head>
<body>
<button onclick="Ti.App.fireEvent('app:fromWebView', { message: 'event fired from WebView, handled in Titanium' });">fromWebView</button>
</body>
</html>
"app.js“
var win = Ti.UI.createWindow();
var webview = Ti.UI.createWebView({
url: 'logging.html'
});
var button = Ti.UI.createButton({
title: 'fromTitanium',
height: '50dp',
width: '130dp'
});
button.addEventListener('click', function(e) {
Ti.App.fireEvent('app:fromTitanium', { message: 'event fired from Titanium, handled in WebView' });
});
Ti.App.addEventListener('app:fromWebView', function(e) {
alert(e.message);
});
win.add(webview);
win.add(button);
win.open();
在您的项目中创建一个名为"logging.html“的文件,并将html代码放入其中。并将代码放入"app.js“。
如果错误仍然存在,请检查这是否是https://jira.appcelerator.org/的已知问题。如果不是,则创建一个票据,链接到此问题,但也要在票据本身中提供可重现的代码、步骤和环境信息。别忘了在这里放一个到彩票的链接,这样其他人就可以和你一起观看了。
https://stackoverflow.com/questions/35126762
复制相似问题