{ "id": "111286", "key": "AC-2180", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "12217", "key": "AC", "name": "Appcelerator - INBOX", "projectCategory": { "id": "10000", "description": "", "name": "Customer Service" } }, "resolution": { "id": "2", "description": "The problem described is an issue which will never be fixed.", "name": "Won't Fix" }, "resolutiondate": "2013-03-19T20:02:49.000+0000", "created": "2013-03-17T20:01:03.000+0000", "labels": [ "android", "mapview", "scrollview" ], "versions": [], "issuelinks": [ { "id": "26766", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "110645", "key": "AC-2434", "fields": { "summary": "[Android] Google Maps API v2 does not work in a scrollview", "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" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "updated": "2016-03-08T07:41:10.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": "14550", "name": "Appcelerator Modules", "description": "Please enter tickets related to Modules here." } ], "description": "h2. Problem\r\n\r\nA mapview in a scrollview should not leave behind a black box when scrolled.\r\nThis works in Android 4.x but NOT in Android 2.3.x\r\n\r\nh2. Test case\r\n\r\n{code:lang=javascript|title=app.js}\r\nvar MapModule = require('ti.map');\r\n\r\nvar win = Ti.UI.createWindow({\r\n\tbackgroundColor: 'white'\r\n});\r\n\r\nvar vert = Ti.UI.createScrollView({\r\n\tcontentHeight: 'auto',\r\n\tscrollType: 'vertical',\r\n\tshowVerticalScrollIndicator: true,\r\n\tlayout:'vertical',\r\n\tcanCancelEvents: false,\r\n\twidth: Ti.UI.SIZE\r\n});\r\n\r\nvar mapview = MapModule.createView({\r\n\theight: 250,\r\n mapType: MapModule.NORMAL_TYPE,\r\n region: {latitude: -33.87365, longitude: 151.20689, latitudeDelta: 0.1, longitudeDelta: 0.1 },\r\n});\r\n\r\nvert.add(Ti.UI.createView({\r\n\theight: 200, width: 100, backgroundColor: 'red'\r\n}))\r\n\r\nvert.add(Ti.UI.createView({\r\n\theight: 150, width: 100, backgroundColor: 'blue'\r\n}))\r\n\r\nvert.add(mapview);\r\n\r\nvert.add(Ti.UI.createView({\r\n\theight: 300, width: 100, backgroundColor: 'green'\r\n}))\r\n\r\nwin.add(vert);\r\n\r\nwin.open();\r\n\r\n\r\n{code}", "attachment": [ { "id": "36450", "filename": "IMG_0592.PNG", "author": { "name": "stahlgmbh", "key": "stahlgmbh", "displayName": "Martin Eckardt", "active": true, "timeZone": "Europe/Berlin" }, "created": "2013-03-19T18:54:31.000+0000", "size": 340995, "mimeType": "image/png" } ], "flagged": false, "summary": "[Android] Google Maps API v2 does not work in a scrollview", "creator": { "name": "stahlgmbh", "key": "stahlgmbh", "displayName": "Martin Eckardt", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "stahlgmbh", "key": "stahlgmbh", "displayName": "Martin Eckardt", "active": true, "timeZone": "Europe/Berlin" }, "environment": "Android 2.3.x, Ti 3.1.0 CI, Google Maps v2", "comment": { "comments": [ { "id": "242957", "author": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Martin,\n\nIt is generally not good code practice to have a map view within a scroll view. Good coding practices suggest having a mapview in its own window. If you want the ability to have a map within a scrolling view, it is suggested to use a web view to achieve this. Is there a specific reason why you need to have a map view within a scroll view?\n\nRegards,\nCarter ", "updateAuthor": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-19T18:03:50.000+0000", "updated": "2013-03-19T18:03:50.000+0000" }, { "id": "242985", "author": { "name": "stahlgmbh", "key": "stahlgmbh", "displayName": "Martin Eckardt", "active": true, "timeZone": "Europe/Berlin" }, "body": "Hi Carter,\n\nThanks for your answer.\nI attached you a screenshot from the iphone window. I want to show the user a quick overview how far the current location is from the shown place.\n\nRegards,\nMartin", "updateAuthor": { "name": "stahlgmbh", "key": "stahlgmbh", "displayName": "Martin Eckardt", "active": true, "timeZone": "Europe/Berlin" }, "created": "2013-03-19T18:53:20.000+0000", "updated": "2013-03-19T18:53:20.000+0000" }, { "id": "243005", "author": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Martin,\nWould you mind adding the screenshots of the working behavior in android 4.x and the broken behavior in 2.3.x while I look into this?\nThanks,\nCarter", "updateAuthor": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-19T19:33:34.000+0000", "updated": "2013-03-19T19:33:34.000+0000" }, { "id": "243009", "author": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I spoke to engineering about this issue and they informed me that the method of having scroll views within scroll views will not work (100% of the time) in android. The way that views are nested in the android OS does not permit flawless implementation of nested scroll views. For this reason, we cannot support this method. This isn't an issue with the Titanium platform, rather a limitation applied by the Android SDK. So unfortunately we are unable fix this problem from our end.\n\nRegards,\n\nCarter\n\n", "updateAuthor": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-03-19T20:01:32.000+0000", "updated": "2013-03-19T20:01:32.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }