TextField换行问题总结
txt.multiline=true;
txt.htmlText = "123456789
123456789";
这是正确的,但是
txt.htmlText = "123456789
123456789";
txt.multiline=true;就错误了不能正确换行了。
注意!
要用<br> 就要一定设置这个属性 txt.multiline=true;
也许还要设置 wordWrap = true
“\n” 不受此限制
正確使用TextField.htmlText的做法
TextField可以支持一些HTML Tag,例如:
info.htmlText = "<b>Bold</b>, <i>italic</i>, <u>underline</u>";
結果:
Bold,
italic,
underline
但是,當利用htmlText逐步加入字段,就會自動出現換行的問題,例如:
info.htmlText = "<b>Bold</b>";
info.htmlText += ", <i>italic</i>";
info.htmlText += ", <u>underline</u>";
結果:
Bold
,
italic
,
underline
只要trace看看:
trace(info.htmlText);
原來Flash Player自行加了<p>:
<TEXTFORMAT LEADING="3">
<P ALIGN="LEFT"><FONT FACE="Arial" SIZE="14" COLOR="#000000"><B>Bold</B></FONT>
</P></TEXTFORMAT> <TEXTFORMAT LEADING="3">
<P ALIGN="LEFT"><FONT FACE="Arial" SIZE="14" COLOR="#000000">, <I>italic</I></FONT>
</P></TEXTFORMAT> <TEXTFORMAT LEADING="3">
<P ALIGN="LEFT"><FONT FACE="Arial" SIZE="14" COLOR="#000000">, <U>underline</U></FONT>
</P></TEXTFORMAT>
因此,正確利用htmlText逐步加入字段的做法,是應該先將字段放在一個Variable裡,最後傳到htmlText中:
var tmpTxt = "<b>Bold</b>";
tmpTxt += ", <i>italic</i>";
tmpTxt += ", <u>underline</u>";
info.htmlText = tmpTxt;