Hello.
I have a TableView that is nested inside a View and having an issue receiving click events on the table when a selection is made. If the TableView is added directly to the window instead, the events work as expected. Unfortunately I need the TableView nested inside a View, has anyone encountered this before? Setting touchEnabled:false on the View does not seem to effect the outcome at all either.
A snippet below to illustrate the idea (shortened).
Many thanks.
var window = Ti.UI.createWindow({ navBarHidden : true }); var table = Ti.UI.createTableView(); table.setData([{title:'Test 1'},{title:'Test 2'}]); table.addEventListener('click', clickHandler); var view = Ti.UI.createView({ touchEnabled : false }); view.add(table); window.add(view);
2 Answers
Works fine for me. I'm assuming you really do have a clickHandler defined somewhere else?
Here's my code. I get the debug output as expected.
var window = Ti.UI.createWindow({ navBarHidden : true }); var table = Ti.UI.createTableView(); table.setData([{title:'Test 1'},{title:'Test 2'}]); table.addEventListener('click', function (e) { Ti.API.debug ("click event; row.title: " + e.row.title); }); var view = Ti.UI.createView({}); view.add(table); window.add(view); window.open ();
Michael try this,
var _window = Ti.UI.createWindow({ navBarHidden : true }); var view = Ti.UI.createView(); var data = []; var table = Ti.UI.createTableView(); var row1 = Ti.UI.createTableViewRow({title:'Test 1'}); data.push(row1); var row2 = Ti.UI.createTableViewRow({title:'Test 2'}); data.push(row2); table.setData(data); view.add(table); table.addEventListener('click', function (e) { alert(e.row.title); }); _window.add(view); _window.open ();
Your Answer
Think you can help? Login to answer this question!