{ "id": "62063", "key": "TIMOB-1431", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2017-05-02T17:40:23.000+0000", "created": "2011-04-15T02:52:10.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "ios", "iphone", "performance", "tableview" ], "versions": [ { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [], "assignee": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-05-30T17:21:54.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "{html}

The following code runs fine on the iPhone 3GS, the iPhone\r\nsimulator and the iPad simulator when the app is built with SDK\r\n1.3.2. When building the same code with SDK 1.4.0 it renders\r\nextremely slow on the iPhone 3GS. You can see the individual rows\r\nbecoming visible one after the other and when you try to scroll\r\nright after the first rows have been painted, you can see that it\r\ntakes really long for the next rows to show up. I can see the same\r\nbehaviour in the iPad simulator (another issue is that you have to\r\nclick somewhere in the simulator to make the table visible at all).\r\nOnly the iPhone simulator works fine with SDK 1.4.0 as well.

\r\n
\r\nTitanium.UI.setBackgroundColor('#000');\r\nvar win = Titanium.UI.createWindow();\r\nvar rows = [];\r\nfor (var i = 0; i < 200; i++) {\r\n    rows[i] = Titanium.UI.createTableViewRow({className:'test'});\r\n    rows[i].add(Titanium.UI.createLabel({text:'row ' + i}));\r\n}\r\nvar table = Titanium.UI.createTableView({data:rows});\r\nwin.add(table);\r\nwin.open();\r\n
{html}", "attachment": [], "flagged": false, "summary": "TableView extremely slow with SDK 1.4.0", "creator": { "name": "michaeldescher", "key": "michaeldescher", "displayName": "Michael Descher", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "michaeldescher", "key": "michaeldescher", "displayName": "Michael Descher", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "125650", "author": { "name": "gregpierce", "key": "gregpierce", "displayName": "Greg Pierce", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I'm seeing similar drop offs in tableView performance with 1.4.\nNoticeable lags when setting data.

{html}", "updateAuthor": { "name": "gregpierce", "key": "gregpierce", "displayName": "Greg Pierce", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:11.000+0000", "updated": "2011-04-15T02:52:11.000+0000" }, { "id": "125651", "author": { "name": "mofle", "key": "mofle", "displayName": "Sindre Sorhus", "active": true, "timeZone": "Europe/Oslo" }, "body": "{html}

Me and these poeple too: \nhttp://developer.appcelerator.com/question/51461/slower-tableview-d...

{html}", "updateAuthor": { "name": "mofle", "key": "mofle", "displayName": "Sindre Sorhus", "active": true, "timeZone": "Europe/Oslo" }, "created": "2011-04-15T02:52:11.000+0000", "updated": "2011-04-15T02:52:11.000+0000" }, { "id": "125652", "author": { "name": "lansea90", "key": "lansea90", "displayName": "lansea90", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I also found this performance issue!!!!

{html}", "updateAuthor": { "name": "lansea90", "key": "lansea90", "displayName": "lansea90", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:11.000+0000", "updated": "2011-04-15T02:52:11.000+0000" }, { "id": "125653", "author": { "name": "richbaughman", "key": "richbaughman", "displayName": "Rich Baughman", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

I also have seen this (was this reported previously under\nanother ticket?) Also, rows in the TableView will not be painted as\nlong as the screen is moving, so if you \"flick\" the screen to move\ndown, nothing appears until the motion stops, then the rows appear,\none-by-one. Really annoying and confusing to the user, since they\ncannot see where they are for some time.

{html}", "updateAuthor": { "name": "richbaughman", "key": "richbaughman", "displayName": "Rich Baughman", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:12.000+0000", "updated": "2011-04-15T02:52:12.000+0000" }, { "id": "125654", "author": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Ran into this recently.

\n

I have a TableView with no more than 10 rows. The rows do store\na bit of data (I used JSON.stringify() on some objects to store\nthem in a DB and I parse them to populate each row.
\nWhen I open the window that has the TableView it can take between\n10-20sec to load. Once rendered performance is OK.

\n

Hope this helps.

{html}", "updateAuthor": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:12.000+0000", "updated": "2011-04-15T02:52:12.000+0000" }, { "id": "125655", "author": { "name": "robby", "key": "robby", "displayName": "Robby", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

jbermudez: I'd make sure that the loading time isn't due\nprimarily to the JSON-related operations you're doing. JSON parsing\nwith Titanium can take a LONG time if you're dealing with a lot of\nJSON.

{html}", "updateAuthor": { "name": "robby", "key": "robby", "displayName": "Robby", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:13.000+0000", "updated": "2011-04-15T02:52:13.000+0000" }, { "id": "125656", "author": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Robby:
\nI will remove the JSON parsing from my table view operations and\nrun them after. I will post test results.

\n

Thanks.

{html}", "updateAuthor": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:13.000+0000", "updated": "2011-04-15T02:52:13.000+0000" }, { "id": "125657", "author": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

Robby:
\nRemoving the JSON.parse() from the operations in my tableview do\nspeed up the process but I still get a 2 second delay before the\nTableView gets rendered. I had another project with similar\ntableview setup and before 1.4 did not have that type of delay.

{html}", "updateAuthor": { "name": "jbermudez", "key": "jbermudez", "displayName": "jbermudez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:13.000+0000", "updated": "2011-04-15T02:52:13.000+0000" }, { "id": "125658", "author": { "name": "michaeldescher", "key": "michaeldescher", "displayName": "Michael Descher", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

The 10 lines of simple code in the original post clearly show\nthat there must be a non-json-parsing related problem with table\nviews in 1.4.0 which was not there in 1.3.2. It was reported about\n6 weeks ago and nothing has been done. I am sure the people at\nAppcelerator have many issues to look at and to solve, but table\nviews are an essential feature used in many apps, so I wonder why\nthis bug is not fixed yet. I will most likely start native iPhone\nprogramming soon since I cannot rely on a framework with such\nproblems. I am still on 1.3.2 which I patched myself with the\nlatest video player code since the one in 1.3.2 had too many\nproblems for my app.

{html}", "updateAuthor": { "name": "michaeldescher", "key": "michaeldescher", "displayName": "Michael Descher", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:13.000+0000", "updated": "2011-04-15T02:52:13.000+0000" }, { "id": "125659", "author": { "name": "lansea90", "key": "lansea90", "displayName": "lansea90", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

yes,I agree to Michael Descher, The talbleview's problem is very\nhard for us, please solve it!!!!

{html}", "updateAuthor": { "name": "lansea90", "key": "lansea90", "displayName": "lansea90", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T02:52:13.000+0000", "updated": "2011-04-15T02:52:13.000+0000" }, { "id": "214604", "author": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "body": "Tested on an iPhone 3GS using TiSDK 2.2.0v20120814103312, there does seem to be a bit of a lag when scrolling. ", "updateAuthor": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "created": "2012-08-15T11:42:14.000+0000", "updated": "2012-08-15T11:42:14.000+0000" }, { "id": "418615", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Resolving ticket as Invalid as we are now on SDK 6.0.4 GA and this ticket hasn't been touched for a number of years.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-05-02T17:40:23.000+0000", "updated": "2017-05-02T17:40:23.000+0000" } ], "maxResults": 12, "total": 12, "startAt": 0 } } }