リンクを動的に出力する場合、Y-Posを動的に決定できません。私のリンクが単線であるかどうかを見つけることができます。
link_txt.y = i * 20;
これは、リンクが単線の場合にのみ機能します。高さ15px+間隔5pxであると仮定します。
2行になるとすぐに重なります。私はさまざまな方法を試しましたが、それを理解することができません。
何か案は?
リンクを動的に出力する場合、Y-Posを動的に決定できません。私のリンクが単線であるかどうかを見つけることができます。
link_txt.y = i * 20;
これは、リンクが単線の場合にのみ機能します。高さ15px+間隔5pxであると仮定します。
2行になるとすぐに重なります。私はさまざまな方法を試しましたが、それを理解することができません。
何か案は?
「リンクを出力する」とは、コードスニペットによって示されるようにリンクの垂直リストを作成することを意味する場合、次のようなことを試すことができます。
var field:TextField;
var prev:TextField;
for( var i:int = 0; i < _fields.length; i++ )
{
field = _fields[i]
field.y = prev ? ( prev.y + prev.height ) + padding : 0;
prev = field;
}
ここでの秘訣は、条件付きの1行で、変数への有効な参照があるかどうかを確認することですprev
。存在する場合は、ループ内の現在のフィールドのy位置を前のフィールドy +高さ+パディング(オプション)に設定します。前のフィールドへの有効な参照がない場合は、フィールドyが0に設定されます。
あなたが探しているのはTextFieldのtextHeightプロパティだと思います。
var offsetY : Number = 0;
for (var i : int = 0; i < links.length; i++) {
var link_txt : TextField = TextField(links[i]);
link_txt.autoSize = TextFieldAutoSize.LEFT;
link_txt.text = "http://www.google.be";
link_txt.y = offsetY;
offsetY += (link_txt.height + 5);
addChild(link_txt);
}