9.10.调整文本框大小以适应内容

问题
我要调整文本框大小使之正好容纳下内容即可
解决办法
使用autoSize属性
讨论
设置autoSize属性可自动根据内容调整文本框大小。可用值为RIGHT, LEFT, CENTER, 和NONE,都是flash.text.TextFieldAutoSize 类常量。默认值为NONE,表示不自动调整大小。

当设为LEFT 时表示大小变化时左上角位置保持不动,也就是说右下角的位置根据内容变化动态调整:
+展开
-ActionScript
// 下面的两句代码效果一样
field.autoSize = TextFieldAutoSize.LEFT;
field.autoSize = true;

设置为CENTER时根据文本框的中心,保持顶部位置不变,调整左右边框:
+展开
-ActionScript
field.autoSize = TextFieldAutoSize.CENTER;

设置为RIGHT 时保持右上角位置不变,根据内容变化自动调整左下角位置:
+展开
-ActionScript
field.autoSize = TextFieldAutoSize.RIGHT;

wordWrap属性设为true时当内容超出范围时自动移到下一行,也就说保持水平宽度不变,如果为false则自动调整水平宽度不换行:
+展开
-ActionScript
var field:TextField = new TextField( );
field.autoSize = TextFieldAutoSize.LEFT;
field.text = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi tortor purus, aliquet a,
ornare ac, suscipit a, est. Nullam hendrerit molestie erat. Nunc nulla tortor, ullamcorper et, elementum
vel, fringilla sed, dui. Praesent fermentum interdum orci.";
addChild(field);

下面再添加一行字符串:
+展开
-ActionScript
var field:TextField = new TextField( );
field.autoSize = TextFieldAutoSize.LEFT;
field.text = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi tortor purus, aliquet a,
ornare ac, suscipit a, est.";
field.text += "\n";
field.text += "Nullam hendrerit molestie erat. Nunc nulla tortor, ullamcorper et, elementum vel,
fringilla sed, dui. Praesent fermentum interdum orci.";
addChild(field);

wordWrap 属性为true进行自动换行:
+展开
-ActionScript
var field:TextField = new TextField( );
field.autoSize = TextFieldAutoSize.LEFT;
field.wordWrap = true;
field.text = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi tortor purus, aliquet a,
ornare ac, suscipit a, est. Nullam hendrerit molestie erat. Nunc nulla tortor, ullamcorper et, elementum
vel, fringilla sed, dui. Praesent fermentum interdum orci.";
addChild(field);

加支付宝好友偷能量挖...


评论(0)网络
阅读(122)喜欢(0)flash/flex/fcs/AIR