2011-12-30 8 views
0

私はフレックスで作っていますが、ボタンをクリックするとxml内のボタンのテキストがランダムなエントリに変更されます。 xmlはassetsフォルダにあり、games.xmlというタイトルが付けられています。ボタンを押したときにランダムなゲームを選択したいと思います。ここflex - ボタンのテキストをランダムなxmlエントリに変更onclick

ここgames.xml

<games> 
    <game> GameName1 
    <description> description1 </description> 
    </game> 
    <game> GameName2 
    <description> description2 </description> 
    </game> 
    <game> GameName3 
    <description> description3 </description> 
    </game> 
</games> 

とあるフレックスファイルはあなたが提供することができます任意の助け

<?xml version="1.0" encoding="utf-8"?> 
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    backgroundColor="#0000FF" title="games!"> 

<fx:Script> 
    <![CDATA[ 

     protected function button1_clickHandler(event:MouseEvent):void 
     { 
      // TODO Auto-generated method stub 
      gamebutton.label="test" <---i want this to be a random game name 
     } 
    ]]> 
</fx:Script> 

<fx:Declarations> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 
<s:Button id="gamebutton" click="button1_clickHandler(event)" horizontalCenter="0" top="10" x="0" width="95%" label="Pick A Game"/> 

</s:View> 

感謝です!

+0

コードの最終版では、数字のプレースホルダだけでなく、ゲームの名前も異なります。それをXMLから引き出す方法はありますか?申し訳ありませんが最初にはっきりしませんでした – BretzelPretzel

答えて

1

こんにちはちょうどここbutton1_clickHandler

protected function button1_clickHandler(event:MouseEvent):void 
{ 
    var num:int = (Math.random() * (4 - 1)) + 1 
    // TODO Auto-generated method stub 
    gamebutton.label="GameName" + num.toString(); 
} 

を次のコードを入れて4は最大のゲーム+ 1と1がmunimum.and numは

1〜3の間の乱数がいいを持っているだろうです日。

+0

コードの最終版では、数字のプレースホルダだけでなく、ゲームの名前も異なります。それをXMLから引き出す方法はありますか?申し訳ありませんが、最初は – BretzelPretzel

+0

で配列を取得し、指定されたインデックス番号のインデックスを取得する必要があります。 例あなたは配列名ゲームを持っており、あなたは単にゲームであるインデックス[num]を渡す必要があります....これは今までの中で最も簡単な方法かもしれません。 –

関連する問題