Project: titanium
Issue TIMOB-10371: Blackberry: Imageview parity for scaling behavior
As part of TIMOB-3749 scaling behavior of imageViews was changed. If either width or height of image view are set to follow SIZE behavior('auto',Ti.UI.SIZE,undefined) then the image is scaled with aspect ratio intact. Otherwise the image is scaled ignoring aspect ratio. Test code below {code} var win = Ti.UI.createWindow({ backgroundColor:'#fff', layout:'vertical' }); var image = Ti.UI.createImageView({ image: "http://www.catravelservices.com/management/hotels/pictures/Mawamba_lodge_nature.jpg", backgroundColor : "red" }); var label = Ti.UI.createLabel({ text:'Results Here' }) var updateLabel = function(){ var size = image.size; label.text = 'ImageView size is '+size.width+'x'+size.height; } var controlsContainer = Ti.UI.createView({ height:Ti.UI.SIZE }) var widthControls = Ti.UI.createView({ width:'50%', layout:'vertical', left:0, height:Ti.UI.SIZE }) var heightControls = Ti.UI.createView({ width:'50%', layout:'vertical', right:0, height:Ti.UI.SIZE }) controlsContainer.add(widthControls); controlsContainer.add(heightControls); var b1 = Ti.UI.createButton({title:'WIDTH=SIZE'}) var b2 = Ti.UI.createButton({title:'WIDTH=165'}) var b3 = Ti.UI.createButton({title:'WIDTH=250'}) var b4 = Ti.UI.createButton({title:'HEIGHT=SIZE'}) var b5 = Ti.UI.createButton({title:'HEIGHT=50'}) var b6 = Ti.UI.createButton({title:'HEIGHT=165'}) b1.addEventListener('click',function(e){ image.width=Ti.UI.SIZE; setTimeout(updateLabel,500); }) b2.addEventListener('click',function(e){ image.width=165; setTimeout(updateLabel,500); }) b3.addEventListener('click',function(e){ image.width=250; setTimeout(updateLabel,500); }) b4.addEventListener('click',function(e){ image.height=Ti.UI.SIZE; setTimeout(updateLabel,500); }) b5.addEventListener('click',function(e){ image.height=50; setTimeout(updateLabel,500); }) b6.addEventListener('click',function(e){ image.height=165; setTimeout(updateLabel,500); }) win.add(image); widthControls.add(b1); widthControls.add(b2); widthControls.add(b3); heightControls.add(b4); heightControls.add(b5); heightControls.add(b6); win.add(controlsContainer); win.add(label) win.open(); {code}
Story points: 8