// app.js ---------------------- require('lib/require_patch').monkeypatch(this); var globals = {}; (function() { var AppTabGroup = require('js/AppTabGroup'), HomeWindow = require('js/HomeWindow'); globals.tabs = new AppTabGroup({ title : 'Home', icon : 'images/light_home.png', window : new HomeWindow({ title : 'Home', backgroundColor : '#000', barColor : '#444', navBarHidden : true }) }); globals.tabs.open(); })(); // HomeWindow.js ---------------------- exports.HomeWindow = function(args) { var instance = Ti.UI.createWindow(args); var button = Ti.UI.createButton({ height:44, width:200, title:'Open new window on tab', top:20 }); instance.add(button); button.addEventListener('click', function() { globals.tabs.currentTab.open(Ti.UI.createWindow({ title: 'Detail', backgroundColor: 'black', barColor: '#444' })); }); return instance; } // AppTabGroup.jp ---------------------- exports.AppTabGroup = function(args) { // tab var instance = Ti.UI.createTabGroup(); for (var i = 0, l = arguments.length; i < l; i++) { var tab = Ti.UI.createTab(arguments[i]); if (i === 0) { instance.currentTab = tab; } instance.addTab(tab); } instance.addEventListener('focus', function(e) { instance.currentTab = e.tab; }); return instance; }