【Unity3D】Text组件中换行文本显示异常

假如在Text组件中,你需要将文本换行显示。如果你是初学者,你会发现有的时候\n管用,有的时候\n又不管用了。细心的你可能会发现。能显示正常的时候,一般是将字符串写在代码里面,然后给组件赋值;而显示异常的时候,一般是通过加载文件,获取文件中的文本,然后给组件赋值。

你将测试文本写在代码中,然后给Text组件赋值,显示正常。

   string _testStr = "AAAAA\nBBBBB";
   _tempText.text = _testStr;

假如你将测试文本放在文件中,用加载文件读取数据,然后给Text组件赋值,你会发现显示的结果为:AAAAA\nBBBBB

TextAsset _testAsset = Resources.Load<TextAsset>("Config/Test");
string _testStr = _testAsset.text;
_tempText.text = _testStr;

这个时候你打断点发现,加载出来的_testAsset.text,实际值为:AAAAA\\nBBBBB

Text组件中,换行的转义字符为\n,不是/n或\\n,而加载出来的文本,会将\n转换为\\n。所以将\\n替换掉即可。

TextAsset _testAsset = Resources.Load<TextAsset>("Config/Test");
string _testStr = _testAsset.text;
_tempText.text = _testStr.Replace("\\n", "\n");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值