{ "id": "63746", "key": "TIMOB-3114", "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": "5", "description": "All attempts at reproducing this issue failed, or not enough information was available to reproduce the issue. Reading the code produces no clues as to why this behavior would occur. If more information appears later, please reopen the issue.", "name": "Cannot Reproduce" }, "resolutiondate": "2012-07-26T16:45:20.000+0000", "created": "2011-04-15T03:37:17.000+0000", "priority": { "name": "Trivial", "id": "5" }, "labels": [ "defect", "ios", "ios3.2", "ipad", "rplist" ], "versions": [ { "id": "11233", "name": "Release 1.6.0", "archived": true, "released": true, "releaseDate": "2011-02-23" } ], "issuelinks": [ { "id": "19291", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "94532", "key": "TIMOB-9901", "fields": { "summary": "TiAPI: Review and clean up platform bugs and reduce bug count by 20%.", "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" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } } ], "assignee": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2012-07-26T20:22:15.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}

Problem

\n

Assume I have a scroll view inside of a scrollable view. If the\nscroll view's content is not taller than the scroll view, on iOS\n3.2 the scrollable view will not be able to change pages\n(horizontally dragging your finger does nothing). On iOS 4 and\nlater, everything works as expected (horizontally dragging your\nfinger changes the page).

\n

Tested On

\n

Titanium SDK version: 1.6.0 (02/10/11 14:34 9db0685...)
\nBROKEN in iPad Simulator 3.2
\nWORKS in iPad Simulator 4.2

\n

Sample Code

\n

This code has a scrollable view with three scroll views of\nvarying content heights. The first is taller, the second is equal,\nand the third is shorter. The end result is you can swipe from the\nfirst to the second, but if you let the scrollable settle (don't\ntouch it for several seconds), you will be stuck.

\n
\nvar window = Titanium.UI.createWindow({\n    backgroundColor:'#fff'\n});\n\nvar scrollViewHeights = [window.height + 1, window.height, window.height - 1];\n\nwindow.add(Ti.UI.createLabel({\n    top: 0, left: 0, height: 30,\n    text: 'This is scrollable view, but it will get stuck on the second page on iOS 3.2 (if you let it settle).'\n}));\n\nvar views = [];\nfor (var i = 0; i < 3; i++) {\n    var scrollView = Ti.UI.createScrollView({\n        top: 0, left: 0, right: 0, bottom: 0,\n        contentHeight: 'auto'\n    });\n    scrollView.add(Ti.UI.createImageView({\n        top: 0, left: 0, right: 0,\n        height: scrollViewHeights[i],\n        image: 'default_app_logo.png'\n    }));\n    views.push(scrollView);\n}\n\nwindow.add(Ti.UI.createScrollableView({\n    top: 0, right: 0, bottom: 0, left: 0,\n    views: views\n}));\n\nwindow.add(Ti.UI.createLabel({\n    bottom: 0, left: 0, height: 30,\n    text: 'This is caused by the scroll view; if its content isn\\'t tall enough to scroll, it prevents 3.2 touch events.'\n}));\n\nwindow.open();\n
\n

Associated Helpdesk Ticket

\n

http://developer.appcelerator.com/helpdesk/view/71641

{html}", "attachment": [], "flagged": false, "summary": "iPad: Scroll View in 3.2 Causes Scrollable View to Malfunction", "creator": { "name": "dtoth", "key": "dtoth", "displayName": "Dawson Toth", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "dtoth", "key": "dtoth", "displayName": "Dawson Toth", "active": true, "timeZone": "America/New_York" }, "environment": null, "comment": { "comments": [ { "id": "130099", "author": { "name": "dtoth", "key": "dtoth", "displayName": "Dawson Toth", "active": true, "timeZone": "America/New_York" }, "body": "{html}

Workaround

\n

Make sure that any scroll view inside of a scrollable view has a\ncontentHeight taller than the view itself.

{html}", "updateAuthor": { "name": "dtoth", "key": "dtoth", "displayName": "Dawson Toth", "active": true, "timeZone": "America/New_York" }, "created": "2011-04-15T03:37:17.000+0000", "updated": "2011-04-15T03:37:17.000+0000" }, { "id": "209978", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Cannot observe described behavior on SDK 2.2.0.014b86f, iPhone Sim 5.1.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-26T16:45:20.000+0000", "updated": "2012-07-26T16:45:20.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }