守望者--AIR技术交流
标题:
TextInput 、TextArea 换行不得不说的秘密
[打印本页]
作者:
破晓
时间:
2015-1-8 10:05
标题:
TextInput 、TextArea 换行不得不说的秘密
本帖最后由 破晓 于 2016-3-14 11:19 编辑
做了个测试发现TextInput 、TextArea 换行在标签中写和在代码中写是不一样的
TextInput 、TextArea 换行:
1.在标签中的换行:
在标签中换行 的换行符是

而不是 \n 或 \r;
例:
<s:TextArea id="tta" text="aaa
bbb \n ccc \r eee"/>
<mx:TextInput id="mxtxt" height="100" text="aaa
bbb \n ccc \r eee"/>
复制代码
你可以试一下
这里显示的是
aaa
bbb \n ccc \r eee
而不是
aaa
bbb
ccc
eee
2.在代码中赋值时的换行则相反,\n 或 \r有效,而

却无效
例:
<fx:Script>
<![CDATA[
private function showText():void
{
tta.text = "aaa
bbb \n ccc \r eee";
mxtxt.text = "aaa
bbb \n ccc \r eee";
}
]]>
</fx:Script>
<s:TextArea id="tta"/>
<mx:TextInput id="mxtxt"/>
复制代码
显示结果正好相反
这里要注意的是在as3里
\n 和 \r 都是换行
而别的语言里会把 \n\r 的组合视为换行,所以有时候后台发来的数据在后台是换一行而在前台却是换两行,此时要把\r给替换成""就好了
另外:
TextField里的情况和第二种情况一样
=========================================================
\r 回车
\n 换行
XML中的回车

MXML中还可以这样:
<s:TextInput>
<s:text><![CDATA[你好
Hello]]></s:text>
</s:TextInput>
欢迎光临 守望者--AIR技术交流 (http://www.airmyth.com/)