Actionscript 3 使用一个文本输入显示更多文本
是否可以使用Actionscript 3 使用一个文本输入显示更多文本,actionscript-3,Actionscript 3,是否可以使用TextField显示多个文本,如下所示: Susan 50 Bob 100 Michael 30 这是为了排行榜 关于我想说,对于这样的排行榜,您需要两个文本字段,一个相邻,具有相同的defaultTextFormat属性,都设置为multiline=true;wordwrap=false,左一个填名字,右一个填分数。这样可以避免使用统一宽度的字体。例如: public class Leaderboard exte
TextField
显示多个文本,如下所示:
Susan 50
Bob 100
Michael 30
这是为了排行榜
关于我想说,对于这样的排行榜,您需要两个文本字段,一个相邻,具有相同的
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');
}
}
}
根据记录分数的方式调整界面。您可以使用换行符(\n)和制表符(\t)来完成此操作。不过我建议使用统一宽度的字体。这并不是管理多个文本实例的最佳方法,但您始终可以按照mfa的建议执行,并将
text.multiline
设置为true。谢谢,您可以告诉我执行此操作的最佳方法是什么?:)正是我需要的。谢谢它一直给我错误:在字符串中找不到属性名,并且该行中没有默认值:namesTF.appendText(o.name+'\n');没错。您将什么类型的数据传输到displayScores()
?我认为分数可以是一个对象数组,每个对象都有“name”和“score”属性。您似乎给了它一个字符串数组。如果是这样的话,你需要把它们分成名字和分数部分。