从昨天到今天,一直被困于Flex应用中报出的Error #1502的Bug,搞不明白简单的赋值,SDK报出这么个错误来,而且并不是每一个字符串进行此种赋值都会报错。
报错的语句是: textArea.textFlow = TextConverter.importToFlow(value, TextConverter.TEXT_LAYOUT_FORMAT);
暂时认为是因为导入的文本过长,超过TextArea对象的高,采用这种方法赋值,会引发生成滚动条,带出相关的Error吧。
改写为: // 先定义一个TextFlow变量,方便赋值时候传入 var importTextFlow: TextFlow = null; importTextFlow = TextConverter.importToFlow(value, TextConverter.TEXT_LAYOUT_FORMAT); // 将TextFlow变量的值,进行两次转变,先转为html格式的String类型,再转回为TextFlow类型后,赋值给textArea.textFlow textArea.textFlow = TextConverter.importToFlow(TextConverter.export(importTextFlow, TextConverter.TEXT_FIELD_HTML_FORMAT, ConversionType.STRING_TYPE), TextConverter.TEXT_FIELD_HTML_FORMAT);
采用如上写法后,奇怪般的好用了,呵呵,有时灵光一闪,还是有些作用的。