[TIMOB-9923] Android: Labels disappear if width or height is set to SIZE
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2012-12-21T05:32:41.000+0000 |
Affected Version/s | Release 2.1.0 |
Fix Version/s | Sprint 2012-14 Core, Release 2.1.1, Release 3.0.0 |
Components | Android |
Labels | core, layout, module_label, qe-testadded |
Reporter | Vishal Duggal |
Assignee | Allen Yeung |
Created | 2012-07-10T15:11:43.000+0000 |
Updated | 2012-12-21T18:31:12.000+0000 |
Description
Discovered while doing some parity testing. Drop the following code into app.js and click the SIZE buttons for width or height.
Observed: Label disappears.
Expected: Label does not disappear
var win = Ti.UI.createWindow({
backgroundColor: 'white',
});
var theFont = {fontSize: 11, font: 'Helevetica' };
var container = Ti.UI.createView({
layout:'vertical'
})
var controls1 = Ti.UI.createView({
layout:'horizontal',
height:Ti.UI.SIZE,
top:10,
borderColor:'#ccc',
borderWidth:1
})
var title1 = Ti.UI.createLabel({
font :theFont,
text:'V-ALIGN'
})
var c1b1 = Ti.UI.createButton({
left:10,
font :theFont,
title:'TOP'
})
var c1b2 = Ti.UI.createButton({
left:10,
font :theFont,
title:'BOTTOM'
})
var c1b3 = Ti.UI.createButton({
left:10,
font :theFont,
title:'CENTER'
})
controls1.add(title1);
controls1.add(c1b1);
controls1.add(c1b2);
controls1.add(c1b3);
container.add(controls1)
var controls2 = Ti.UI.createView({
layout:'horizontal',
height:Ti.UI.SIZE,
top:10,
borderColor:'#ccc',
borderWidth:1
})
var title2 = Ti.UI.createLabel({
font :theFont,
text:'T-ALIGN'
})
var c2b1 = Ti.UI.createButton({
left:10,
font :theFont,
title:'LEFT'
})
var c2b2 = Ti.UI.createButton({
left:10,
font :theFont,
title:'RIGHT'
})
var c2b3 = Ti.UI.createButton({
left:10,
font :theFont,
title:'CENTER'
})
controls2.add(title2);
controls2.add(c2b1);
controls2.add(c2b2);
controls2.add(c2b3);
container.add(controls2)
var controls3 = Ti.UI.createView({
layout:'horizontal',
height:Ti.UI.SIZE,
top:10,
borderColor:'#ccc',
borderWidth:1
})
var title3 = Ti.UI.createLabel({
font :theFont,
text:'WIDTH'
})
var c3b1 = Ti.UI.createButton({
left:10,
font :theFont,
title:'SIZE'
})
var c3b2 = Ti.UI.createButton({
left:10,
font :theFont,
title:'200'
})
var c3b3 = Ti.UI.createButton({
left:10,
font :theFont,
title:'150'
})
var c3b4 = Ti.UI.createButton({
left:10,
font :theFont,
title:'100'
})
controls3.add(title3);
controls3.add(c3b1);
controls3.add(c3b2);
controls3.add(c3b3);
controls3.add(c3b4);
container.add(controls3);
var controls4 = Ti.UI.createView({
layout:'horizontal',
height:Ti.UI.SIZE,
top:10,
borderColor:'#ccc',
borderWidth:1
})
var title4 = Ti.UI.createLabel({
font :theFont,
text:'HEIGHT'
})
var c4b1 = Ti.UI.createButton({
left:10,
font :theFont,
title:'SIZE'
})
var c4b2 = Ti.UI.createButton({
left:10,
font :theFont,
title:'200'
})
var c4b3 = Ti.UI.createButton({
left:10,
font :theFont,
title:'150'
})
var c4b4 = Ti.UI.createButton({
left:10,
font :theFont,
title:'100'
})
controls4.add(title4);
controls4.add(c4b1);
controls4.add(c4b2);
controls4.add(c4b3);
controls4.add(c4b4);
container.add(controls4);
var testLabel = Ti.UI.createLabel({
backgroundColor: 'white',
color: 'black',
//text:'I am the test label. Switch my properties around and see me change. Vertical Alignment should work well with change in size and text alignment.',
text:'A long label with\na few line breaks\nand unicode (UTF8)\nsymbols such as\na white chess piece \u2655\nand the euro symbol \u20ac\nlooks like this!\n',
borderColor:'red',
borderWidth:1,
top:10
})
container.add(testLabel);
win.add(container);
win.open();
c1b1.addEventListener('click',function(e){testLabel.verticalAlign = Ti.UI.TEXT_VERTICAL_ALIGNMENT_TOP});
c1b2.addEventListener('click',function(e){testLabel.verticalAlign = Ti.UI.TEXT_VERTICAL_ALIGNMENT_BOTTOM});
c1b3.addEventListener('click',function(e){testLabel.verticalAlign = Ti.UI.TEXT_VERTICAL_ALIGNMENT_CENTER});
c2b1.addEventListener('click',function(e){testLabel.textAlign = Ti.UI.TEXT_ALIGNMENT_LEFT});
c2b2.addEventListener('click',function(e){testLabel.textAlign = Ti.UI.TEXT_ALIGNMENT_RIGHT});
c2b3.addEventListener('click',function(e){testLabel.textAlign = Ti.UI.TEXT_ALIGNMENT_CENTER});
c3b1.addEventListener('click',function(e){testLabel.width = Ti.UI.SIZE})
c3b2.addEventListener('click',function(e){testLabel.width = 200})
c3b3.addEventListener('click',function(e){testLabel.width = 150})
c3b4.addEventListener('click',function(e){testLabel.width = 100})
c4b1.addEventListener('click',function(e){testLabel.height = Ti.UI.SIZE})
c4b2.addEventListener('click',function(e){testLabel.height = 200})
c4b3.addEventListener('click',function(e){testLabel.height = 150})
c4b4.addEventListener('click',function(e){testLabel.height = 100})
PR merged https://github.com/appcelerator/titanium_mobile/pull/2567
Verified On: SDK: 2.2.0.v20120713210112 Studio: 2.1.1.201207161421 Device: LG-P970(v 2.2.2)
Verified On: SDK: 2.1.1.v20120716180600 Studio: 2.1.1.201207161421 Device: Samsung Galaxy tab(V 3.2)