as3文本包装问题,firefox,mac

时间:2011-10-03 16:18:30

标签: actionscript-3 textfield

所以,我为一个似乎没有任何问题的客户建立了一个小网站。我发布了它,我的客户报告我,文本字段中正在剪切一些文本。我尝试使用chrome和firefox在我的电脑上重现问题,但一切正常。但是他用firefox从他的mac发给我截图,果然它们被裁剪了。他声称它唯一的火狐,并不是窗户尺寸的一个因素。所以这里是显示最新情况的图片:

text-wrap problem example

其他最正确的词应该是"阿拉巴马州" &安培; "生长"

以下是生成该文本的代码(descTextNew是罪魁祸首):

        nameText.text = names[elementNumber];
        nameText.autoSize = "center";
        nameText.x = object.x + (.5 * videoWidth) - (.5 * nameText.width);
        nameText.y = object.y + videoHeight + 8;
        nameText.background = true;
        nameText.backgroundColor = 0x000000;
        textStyling.color = 0xFFFFFF;
        textStyling.size = 20;
        textStyling.font = myFont.fontName;
        textStyling.letterSpacing = 3;
        textStyling.align = "center";
        nameText.embedFonts = true;
        nameText.setTextFormat(textStyling);
        container.addChild(nameText);

        descTextNew.text = descArrayContent[elementNumber];
        descTextNew.y = object.y + videoHeight + nameText.textHeight + margin - 15;
        descTextNew.width = nameText.textWidth + 30;
        descTextNew.x = object.x + ( (videoWidth - descTextNew.width) / 2 );
        descTextNew.wordWrap = true;
        descTextNew.autoSize = "left";
        descTextNew.background = true;
        descTextNew.backgroundColor = 0x000000;
        descTextStyling.color = 0xFFFFFF;
        descTextStyling.size = Math.round(11 * 1000/stage.stageWidth);
        descTextStyling.font = myFont.fontName;
        descTextStyling.letterSpacing = .5;
        descTextStyling.align = "left";
        descTextNew.setTextFormat(descTextStyling);
        container.addChild(descTextNew);

其中一些变量在此之前被声明为实例变量:

    var names:Array = new Array();
    var nameText:TextField = new TextField();
    var textStyling:TextFormat = new TextFormat();
    var descTextNew:TextField = new TextField();
    var descTextStyling:TextFormat = new TextFormat();
    var margin:int = 28;
    var videoWidth:int = 267;
    var videoHeight:int = 150;

数组namesdescArrayContent有字符串" Paul Rollins,Sr。"和#34;保罗罗林斯举行葬礼......"在由变量elementNumber确定的索引号处添加它们。此外,object是您在图片中看到的图片。不要认为有必要向您展示该代码。

如果您想看到它的实际效果,请点击此链接:

www.footsoldiers.org/test2/

任何想法到底是怎么回事?我不知道从哪里开始。

2 个答案:

答案 0 :(得分:1)

您是否尝试过手动重绘控件?

this.invalidateDisplayList();
this.invalidateLayering();
this.invalidateLayoutDirection();
this.invalidateProperties();
this.invalidateSize();

答案 1 :(得分:0)

在设置了所有其他属性后,我会尝试设置.text属性。 所以尝试将descTextNew.text = descArrayContent [elementNumber]操作放在最后一行。

如果这仍然无法解决您的问题,我建议您也包含 descTextNew.multiline = true 属性。

祝你好运!