我有一个用AS3编写的Android Air项目,当项目开始时,我正在加载音乐并加载要解析的XML文件。在第一帧中,我调用我的类来解析XML并将节点设置为字符串,并播放音频,这两个都工作得很好。同样,在我的第一个框架中,我声明了一些文本字段来输入来自XML文件的数据,以便当用户进入框架3时,用户能够从XML文件中看到这些数据。这也很好。我遇到的问题是在第4帧和第3帧之间,文本框中的数据消失了吗?我从保存数据的XML类跟踪字符串,这些值每次都出现,但是从第3帧到第4帧,再回到第3帧,文本字段显示就消失了。有人能给我指个方向吗?谢谢科学
这是第一帧的一些代码我在这里声明了textfields
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帧时,分数没有显示,但是当我从类中跟踪数据时,它显示正确。谢谢科学
我以前见过这个问题发生在不正确嵌入字体或其他东西,我记不清楚了。测试这一点的一种快速方法是也跟踪字段的.text属性。这样,当文本不可见时,如果字段的。text属性仍然填充,那么你就知道你有渲染问题。
做这个快速测试并发布结果,我会根据结果更新我的答案。