AS3在帧之间显示数据

时间:2011-11-22 05:24:23

标签: android flash actionscript-3 adobe

我有一个用AS3编写的Android Air项目,当项目启动时我正在加载音乐并加载要解析的XML文件。在第一帧中,我调用我的类来解析XML并将节点设置为字符串,并播放音频,这些都可以正常工作。同样在我的第一个框架中,我声明了一些文本字段来输入XML文件中的数据,这样当用户进入第3帧时,用户就能够从XML文件中看到这些数据。这也很好。我遇到的问题是在第4帧和第3帧之间,文本字段中的数据消失了吗?我跟踪XML类中保存数据的字符串,每次都会显示这些值,但是从第3帧到第4帧再返回到第3帧会消除文本字段显示?谁能指出我正确的方向? 谢谢 科学

好的,这是第一帧的一些代码,我在声明文本域

    var name1TextField:TextField = new TextField();
    var name2TextField:TextField = new TextField();

    var format:TextFormat = new TextFormat();
    format.font = "_sans";
    format.color = 0xF8FBF8;
    format.size = 36;

    //set the names format to the textfields
    name1TextField.defaultTextFormat = format;
    name2TextField.defaultTextFormat = format;

    highScore1.addChild(name1TextField);
    highScore2.addChild(name2TextField);

以下是调用XML解析类并将文本设置为节点的代码

    var network:networkScores = new networkScores();
    addChild(network);

    var timer4:Timer = new Timer(600);
    timer4.addEventListener(TimerEvent.TIMER, scoresDis);
    timer4.start();

    function scoresDis(e:TimerEvent):void
    {
       name1TextField.text = network.name1;
       name2TextField.text = network.name2;
       //trace(name1TextField.text);
       //trace(name2TextField.text);

       name1TextField.width = 230;
       name2TextField.width = 230;
       timer4.stop();

    }

上面我已经声明我从第一帧调用音频类和xml类,声明文本字段并从那里继续前进。现在我已经决定,因为这个XML文件是一个得分列表并且编码总是在变化,我认为每次进入第3帧时加载和解析这个文件都是好的。同样的事情仍在发生,我有我的分数显示然后当我转到第4帧并返回第3帧时,分数不会显示,但是当我从类中跟踪数据时,它会正确显示。 谢谢 科学

1 个答案:

答案 0 :(得分:0)

我已经看到这个问题发生之前嵌入不正确的字体或其他东西,我不记得确切。测试这个的一个快速方法是跟踪字段的.text属性。这样,当文本不可见时,如果仍然填充了该字段的.text属性,那么您就知道有一个呈现问题。

执行此快速测试并发布结果,我会根据结果更新我的答案并提供更多信息。