{ "id": "159156", "key": "TIMOB-23126", "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": "2016-04-08T17:33:44.000+0000", "created": "2016-03-30T22:39:26.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "ListView", "iOS" ], "versions": [ { "id": "16997", "name": "Release 5.2.0", "archived": false, "released": true, "releaseDate": "2016-02-23" }, { "id": "17684", "name": "Release 5.2.1", "archived": false, "released": true, "releaseDate": "2016-03-25" } ], "issuelinks": [], "assignee": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-03-20T21:52:24.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": "h6.Issue description\r\n\r\nRemote Images in ListView will not download until user stop scrolling.\r\n\r\nh6. Steps to Replicate\r\n\r\n# Create a new apcelerator default classic project\r\n# Open the app.js file\r\n# Replace the content with the next code: \r\n{code}\r\n///create component instance\r\n var win = Ti.UI.createWindow({\r\n backgroundColor : '#000',\r\n navBarHidden : false,\r\n layout : 'vertical'\r\n });\r\n \r\n var Template = {\r\n properties: {height: 40},\r\n events: {click: function(e) { \r\n var item = e.section.getItemAt(e.itemIndex);\r\n var data = item.info.text;\r\n if(data=='Location services')\r\n {\r\n alert(\"you click Location services\");\r\n }\r\n else if(data==\"Lock Screen\")\r\n {\r\n alert(\"you click Lock Screen\");\r\n }\r\n else if(data==\"Security\")\r\n {\r\n alert(\"you click Security\");\r\n }\r\n else\r\n {\r\n alert(\"you click Language\");\r\n }\r\n \r\n }},\r\n childTemplates: [\r\n {\r\n type: 'Ti.UI.ImageView', // Use an image view for the image\r\n bindId: 'pic', // Maps to a custom pic property of the item data\r\n properties: { // Sets the image view properties\r\n width: '50dp', height: '50dp', left: 10\r\n }\r\n },\r\n \r\n { // Subtitle\r\n type: 'Ti.UI.Label', // Use a label for the subtitle\r\n bindId: 'info', // Maps to a custom es_info property of the item data\r\n properties: { // Sets the label properties\r\n color: 'gray',\r\n font: { fontFamily:'Arial', fontSize: '20dp' },\r\n left: '70dp',\r\n }\r\n }\r\n ]};\r\n \r\n var section = Ti.UI.createListSection({});\r\n var listView = Ti.UI.createListView({\r\n templates: { 'temp': Template},\r\n sections: [ section ]\r\n });\r\n \r\n//Input data set here\r\n \r\n var data = [\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://media.sdfirealarms.co.uk/media/catalog/product/cache/6/image/500x500/fbcb73186cd05db6dad7b3600e4e2dc4/F/E/FEX18_3.jpg'},info:{text:'Location services'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.customtablefelt.com/images/nhl-logo-100x100.jpg'},info:{text:'Lock Screen'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.clker.com/cliparts/R/S/Z/4/t/f/crossed-hammers-bw-100x100-md.png'},info:{text:'Security'}},\r\n {template:'temp', properties:{height:40},pic: {image: 'http://www.ebooks-gratuit.com/images/avatars/Husky-Logo-100x100_full[7885].gif'},info:{text:'Language'}}, \r\n \r\n ];\r\n \r\n section.setItems(data);\r\n \r\n win.add(listView);\r\n \r\n win.open();\r\n{code}\r\n# Run for simulator or device\r\n# Star to scroll before the Images are downloaded \r\n# Once you finish the scroll the images are loaded\r\n\r\nh6. Expected behavior\r\n\r\nThe images should be downloaded at the same time the user is scrolling\r\n", "attachment": [], "flagged": false, "summary": "iOS Device: Remote Images in ListView will not download until user stop scrolling\t", "creator": { "name": "rramirez", "key": "rramirez", "displayName": " Ricardo Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "rramirez", "key": "rramirez", "displayName": " Ricardo Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "iOS Device 9.2\r\niOS Simulator 9.2\r\nXcode 7.2\r\nAppcelerator SDK 5.2.1.GA", "comment": { "comments": [ { "id": "381119", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This is actually the intended behavior , we changed the behavior a couple of releases back. The idea is that we only load images that can be seen by the user for better performance. Ones the scrollVIew has finished scrolling it will get all the fields are currently visible and load the images if need be. ", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-30T23:38:34.000+0000", "updated": "2016-03-30T23:38:34.000+0000" }, { "id": "382217", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "You can disable this by setting the following [property|http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.ListView-property-lazyLoadingEnabled] to false. Which will load images while scrolling :)! \r\n\r\nClosing ticket as invalid. ", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-04-08T17:32:50.000+0000", "updated": "2016-04-08T17:32:50.000+0000" }, { "id": "414012", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket as invalid.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-20T21:52:24.000+0000", "updated": "2017-03-20T21:52:24.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }