0

是否可以显示多个文本,TextField如下所示:

Susan            50
Bob              100
Michael          30

这适用于排行榜

问候

4

1 回答 1

1

我会说对于这样的排行榜,您需要两个相邻的 TextField,具有相同的defaultTextFormat属性,都设置为multiline=true; wordwrap=false,并在左侧填充名称,右侧填充分数。这样您就可以避免使用等宽字体。一个例子:

public class Leaderboard extends Sprite {
    var namesTF:TextField;
    var scoresTF:TextField;
    var dtf:TextFormat;
    ...
        // this goes into the constructor
        dtf=new TextFormat(...);
        namesTF.defaultTextFormat=dtf;
        scoresTF.defaultTextFormat=dtf;
    ...
    public function displayScores(scores:Array):void {
        // scores are objects like {name:Susan,score=200}
        scores.sortOn("score",Array.NUMERIC+Array.DESCENDING);
        namesTF.text='';
        scores.text='';
        for each (var o:Object in scores) {
            namesTF.appendText(o.name+'\n');
            scoresTF.appendText(o.score.toString()+'\n');
        }
    }
}

将界面调整为记录您的分数的方式。

于 2013-03-27T16:12:34.870 回答