Flash ActionScript3 一种按照真实占位宽度截短字符串的方法
2014-05-15 13:51
323 查看
必要的时候我们需要将过长的字符串截短为较短长度,比如最多显示4个中文字,多余4个字只显示4个字(英文则应该是8个字母)等情况。
直接上函数:
参数解释:
_str:String 原字符串
_l:int 你想截短后保留的长度,另外,每个中文长度是2,英文是1,
注意:此方法不支持直接截短html格式字符,因为你的标签也算字符串的长度了,就是说如果你想把你TextField中的html字符串截短,你必须计算出你的真实文字前面的标签一共有多长,标签长度加上你想截短的长度才会得到你想要的,再手动增加结尾需要的标签。
我们已以下3个字符串来测试此方法:
var str1:String = "阿拉斯加的发生激烈反抗精神浪蝶狂蜂加拉塞克";
var str2:String = "asdfsdfsdfsdf";
var str3:String = "<font color='#ff0000'>阿拉斯加的发生激烈反抗精神浪蝶狂蜂加拉塞克</font>";
结果为:
trace(getChar(str1, 8)); //阿拉斯加...
trace(getChar(str2, 8)); //asdfsdfs...
trace(getChar(str3, 8)); //<font co...
trace(getChar(str3, 30)); //<font color='#ff0000'>阿拉斯加...
必要的时候我们需要将过长的字符串截短为较短长度,比如最多显示4个中文字,多余4个字只显示4个字(英文则应该是8个字母)等情况。
直接上函数:
function getChar(_str:String , _l:int):String { var _ba:ByteArray = new ByteArray ; _ba.writeMultiByte (_str, ""); if (_ba.length < _l) return _str; _ba.position = 0; return _ba.readMultiByte(_l, "")+"..."; }
参数解释:
_str:String 原字符串
_l:int 你想截短后保留的长度,另外,每个中文长度是2,英文是1,
注意:此方法不支持直接截短html格式字符,因为你的标签也算字符串的长度了,就是说如果你想把你TextField中的html字符串截短,你必须计算出你的真实文字前面的标签一共有多长,标签长度加上你想截短的长度才会得到你想要的,再手动增加结尾需要的标签。
我们已以下3个字符串来测试此方法:
var str1:String = "阿拉斯加的发生激烈反抗精神浪蝶狂蜂加拉塞克";
var str2:String = "asdfsdfsdfsdf";
var str3:String = "<font color='#ff0000'>阿拉斯加的发生激烈反抗精神浪蝶狂蜂加拉塞克</font>";
结果为:
trace(getChar(str1, 8)); //阿拉斯加...
trace(getChar(str2, 8)); //asdfsdfs...
trace(getChar(str3, 8)); //<font co...
trace(getChar(str3, 30)); //<font color='#ff0000'>阿拉斯加...
相关文章推荐
- Flash ActionScript 中按钮和电影剪辑的事件和方法
- 关于Flash Actionscript脚本与HTML页面JavaScript脚本通讯的方法
- 积少成多Flash ActionScript 3.0(2) - 基础之包、类、包外类、命名空间、属性、方法、接口和继承
- flash as Actionscript中的数组的使用方法
- 自定义Flash ActionScript中的trim函数,去回车函数,字符串替换函数,字节换算函数
- Flash ActionScript (11)用flash打开任何文件的方法
- Flash Action Script 3.0 学习之语法
- Flash Actionscript 2.0 在 FMS 中检测麦克风 摄像头状态的类
- VB中字符串数组快速复制的一种方法
- Flash Action Script总结【非此即彼问题】
- [原创]FlashActionScript序列化和反序列化的实现(第一版)
- 积少成多Flash ActionScript 3.0(1) - 基础之数据类型、操作符和流程控制语句
- str=="" str.Length==0 str==String.Empty三种方法判断字符串为空,哪一种更快?
- 产生随机字符串的一种方法
- 文本字符串按照指定宽度折行显示
- C#与Flash ActionScript 2.0通过xml操作数据库(一)
- 一种字符串表达式求值的简单方法
- flash ActionScript 基本语法回顾
- Flash Actionscript 2.0中的函数与事件 之 函数类(Function Class)
- 如何使用String中的Split方法来按照“分隔符”来分解字符串,可以直接运行