我正在使用钛和开发与厨房水槽相同的标签应用
我的主页选项卡从json文件加载html数据这是代码,
HomeContent.js
function HomeWindow(title) {
var self = Ti.UI.createWindow({
title:title,
backgroundColor:'white'
});
var fileName = 'includes/HomeContent.json';
var file = Titanium.Filesystem.getFile(Titanium.Filesystem.resourcesDirectory, fileName);
var preParseData = (file.read().text);
var response = JSON.parse(preParseData);
var content = response[0].content;
var webview = Titanium.UI.createWebView({data:content});
self.add(webview);
return self;
};
module.exports = HomeWindow;
它是第一次工作,而再次点击它不会再次调用特定的HTML。
更多参考这里是我的选项卡生成代码,我认为不会产生任何问题,
var homewindowWin = new HomeWindow(L('HomeContent'));
var homeTab = Ti.UI.createTab({
title: L('Home'),
icon: '/images/tabs/KS_nav_ui.png',
window: homewindowWin
});
homewindowWin.containingTab = homeTab;
self.addTab(homeTab);
坚持认为任何帮助都会非常感激。
答案 0 :(得分:0)
我通过选项卡的加载事件解决了这个问题,再次分配webview看下面的编辑代码,
function HomeWindow(title) {
var self = Ti.UI.createWindow({
title:title,
backgroundColor:'white'
});
var fileName = 'includes/HomeContent.json';
var file = Titanium.Filesystem.getFile(Titanium.Filesystem.resourcesDirectory, fileName);
var preParseData = (file.read().text);
var response = JSON.parse(preParseData);
var content = response[0].content;
var webview = Titanium.UI.createWebView({data:content});
var counter = 0;
webview.addEventListener('load', function(e) {
counter++;
if ( counter > 1 ) {
self.remove(webview);
webview = null;
fileName = 'includes/HomeContent.json';
file = Titanium.Filesystem.getFile(Titanium.Filesystem.resourcesDirectory, fileName);
preParseData = (file.read().text);
response = JSON.parse(preParseData);
content = response[0].content;
}
var webview = Titanium.UI.createWebView({data:content});
self.add(webview);
});
self.add(webview);
return self;
};
module.exports = HomeWindow;