概括起来
我有一个flash应用程序(为2制作)。当我在我的应用程序中加载一个XML文件并在一个对象中处理它时。我在textfield中得到正确的html输入。
但是,如果我硬编码对象,那么所有的html标记都会从.htmlText属性中消失,并且文本前面有代码。我打算对对象进行硬编码,因为加载速度比xml快得多。
长话短说:string.html = true;删除所有span标记,而我需要这些标记。如何在textfield的htmlText中获取span标记?
下面是更多的信息
在我的应用程序中,我创建了textfields,在其中放置了一些文本,然后设置了正确的x和y值,因此它们都很好地放置在彼此之间。
功能内部:
//ABOVE I CREATE TEXTFIELD USING THE .CREATETEXTFIELD FUNCTION
this["text" + this._textFieldCounter].html = true;
this["text" + this._textFieldCounter].multiline = true;
this["text" + this._textFieldCounter].wordWrap = true;
this["text" + this._textFieldCounter].autoSize = true;
this["text" + this._textFieldCounter].styleSheet = this._styleSheet;
this["text" + this._textFieldCounter].condenseWhite = true;
this["text" + this._textFieldCounter].htmlText = "<span class=\"page\">" + strHtmlText + "</span>";
//trace(this["text" + this._textFieldCounter].htmlText);当我追踪htmlText的时候
<P ALIGN="LEFT">
<FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">
//here comes the strHtmlText
</FONT>
</P>Flash自动将p和字体标签放在我的文本前面。所以我的样式表不会显示正确的样式。如何去掉初始对齐和字体标记,但仍然将textfield保持为html?
编辑
通过设置文本格式,我找到了解决这个问题的方法.不过,
我有个新问题:
在我的strHtmlText中有跨标记( <span class="text-in">blabla</span> ),但是这会被过滤掉。为什么这么说?没有这些样式,我的样式表不会做任何事情。
(从数组加载文本)
发布于 2010-12-19 18:07:11
它必须与将属性分配给TextField的顺序有关。应该是: 1.将field.html设置为true,2.分配styleSheet,3.设置htmlText。styleSheet必须在分配htmlText之前设置--我最初发布了一个指向AS3文档的链接,但对于AS2和as3来说都是如此。
试一试:将一个TextField放到一个新的AS2 FLA的舞台上。将其类型设置为动态类型。把它命名为"_textField“。将字体设置为Verdana,16 to,Black。输入“错误”或者类似于TextField,这样它就有了一些文本。点击“嵌入字体”,确保包含足够数量的字母,如ascii或拉丁文-1。在时间线上,将这段代码输入电影的第一帧。
var style:TextField.StyleSheet = new TextField.StyleSheet();
style.parseCSS("p {font-family:Verdana; font-size:12px; color:#FF0000;}");
_textField.html = true;
_textField.styleSheet = style
_textField.htmlText = "<p>This is a test.</p>";
trace (" new text:"+_textField.htmlText);现在,当您运行程序时,它应该将文本更改为“这是一个测试”,颜色改为红色,字体大小更改为12 px。就在我的电脑上。此外,跟踪打印的文本与分配给htmlText的文本完全相同。
现在返回并交换分配styleSheet和htmlText属性的行。重新运行程序。它会有你抱怨的所有额外标签。
https://stackoverflow.com/questions/4449031
复制相似问题