I am trying to build an iPad app only using Titanium SDK 2.1.2 on my OSX 10.6.8
Well I am not sure what I have done wrong but I am getting an error: [WARN] Exception in event callback. { line = 24; message = "'undefined' is not an object (evaluating 'navGroup.add')"; name = TypeError; sourceId = 166709120; sourceURL = "file://localhost/Users/sherrie/Library/Application%20Support/iPhone%20Simulator/5.0/Applications/7B599727-3424-4330-9F13-A83EEDED6DE3/UAF_Admissions.app/programs.js"; }
I have a master_list.js which calls the next navigation menu called programs.js which will then call the webviews.
master_list.js
var MASTER_WINDOW = {}; (function(){ var win = Titanium.UI.currentWindow; var navGroup = win.navGroup; var tableData = [ Ti.UI.createTableViewRow({title:'Admissions', url:'master_months.js'}), Ti.UI.createTableViewRow({title:'Financial Aid', url:'master_days.js'}), Ti.UI.createTableViewRow({title:'Degrees and Programs', url:'programs.js'}), Ti.UI.createTableViewRow({title:'Galleries', url:'galleries.js'}), Ti.UI.createTableViewRow({title:'Viewbook', url:'flipbook.js'}) ]; /** * on click event, fireEvent, detail window is listening */ function tableClick(evt) { var newWin = Ti.UI.createWindow({ title:evt.row.title, backgroundColor: '#fff', url:evt.row.url }); navGroup.open(newWin); } /** * initialize the window */ MASTER_WINDOW.init = function(){ var tableview = Titanium.UI.createTableView({ data:tableData }); win.add(tableview); tableview.addEventListener('click',tableClick); } })(); MASTER_WINDOW.init();
programs.js
// programs.js var PROGRAMS = {}; (function(){ var win = Titanium.UI.currentWindow; var navGroup = win.navGroup; var tableData = [ Ti.UI.createTableViewRow({title:'Undergraduate majors', url:'undergraduate.js'}), Ti.UI.createTableViewRow({title:'Graduate majors', url:'grad.js'}), Ti.UI.createTableViewRow({title:'Occupational Endorsements', url:'occupational.js'}), Ti.UI.createTableViewRow({title:'Special Training Programs', url:'specialtraining.js'}), Ti.UI.createTableViewRow({title:'Pre-Professional', url:'preprofess.js'}) ]; /** * on click event, fireEvent, detail window is listening */ function tableClick(evt) { var newWin = Ti.UI.createWindow({ title:evt.row.title, backgroundColor: '#fff', url:evt.row.url }); navGroup.open(newWin); } /** * initialize the window */ PROGRAMS.init = function(){ var tableview = Titanium.UI.createTableView({ data:tableData }); win.add(tableview); tableview.addEventListener('click',tableClick); } })(); PROGRAMS.init();
undergraduate.js
// undergraduate.js var UNDERGRADUATE = {}; (function(){ var win = Titanium.UI.currentWindow; var tableData = [ Ti.UI.createTableViewRow({title:'Accounting', url:'degrees/account.html'}), Ti.UI.createTableViewRow({title:'Accounting, Applied', url:'degrees/costs-annual.html'}), Ti.UI.createTableViewRow({title:'Accounting Technician', url:'degrees/costs-semester.html'}), Ti.UI.createTableViewRow({title:'Airframe'}) ]; /** * on click event, fireEvent, detail window is listening */ function tableClick(evt) { var evtData = { "row" : evt.index, "title": evt.row.title, "url" : evt.row.url } Ti.App.fireEvent('app:rowClicked', evtData); } /** * initialize the window */ UNDERGRADUATE.init = function(){ var tableview = Titanium.UI.createTableView({ data:tableData }); win.add(tableview); tableview.addEventListener('click',tableClick); } })(); UNDERGRADUATE.init();
Your Answer
Think you can help? Login to answer this question!