2017-12-29 19 views
0

イメージとラジオボタンを含むxmxlコンポーネントを作成しようとしています。 主なアプリケーションスクリプトは、これらのコンポーネントのいくつかを使用します。カスタムコンポーネントのRadioButton機能

RadioGroupを正しく機能させるために問題が発生しています。 コンポーネントmxmlファイルのRadioButtonのgroupName属性に変数をバインドしました。これをメインアプリケーションスクリプトで設定できます。

この機能は、各ラジオグループのタブをクリックしたときと同じように機能し、各グループの最初のラジオボタンのみがフォーカスを取得します。 しかし、グループ内の各ラジオボタンをクリックすると、前のラジオボタンは選択解除されません。

私はコンポーネントIDをバインドできないことを読んだので、どのようにして各グループのラジオボタンを1つだけ選択することができますか? IFocusManagerを実装する必要がありますか?

はあなたが

答えて

1

ラジオボタンの各グループは、グループ名に割り当てられては、RadioButtonGroupが必要ありがとうございます。 RadioButtonGroupは、一度に1つのボタンだけが選択されていることを確認します。 RadioButtonGroupは<fx:Declarations>で宣言されており、RadioButtonGroupの名前はgroupNameプロパティで割り当てられています。

<fx:Declarations> 
     <s:RadioButtonGroup id="paymentType" itemClick="handlePayment(event);"/> 
    </fx:Declarations> 
    <s:VGroup paddingLeft="10" paddingTop="10"> 
     <s:RadioButton groupName="paymentType" 
         id="payCheck" 
         value="check" 
         label="Pay by check" 
         width="150"/> 
     <s:RadioButton groupName="paymentType" 
         id="payCredit" 
         value="credit" 
         label="Pay by credit card" 
         width="150"/> 
    </s:VGroup> 

のApache Flexの参照:http://flex.apache.org/asdoc/spark/components/RadioButtonGroup.html

+0

ありがとうございました。さらに読むことで、私はIFocusManagerGroupインターフェイスを実装してから、selectedおよびgroupNameのgetおよびset関数を実装する必要があることを理解しています。私はgroupNameを実装することができましたが、選択して問題が発生しています。選択したメソッドを同じグループ名内のすべてのラジオボタンで呼び出すために、どのコンポーネントが割り当てられますか?私はこれを知る必要があるので、自分のカスタムコンポーネントでこの機能を反映させることができます。 – user3468174

+0

独自のRadioGroup実装をローリングしている場合、RadioButtonとRadioButtonGroupを含むようにクラスを拡張して、その機能を取得する必要があります。 – 0xc3

+0

いくつかのコードを提供する次の質問を参照してください。うまくいけば私が何をしようとしているのかを説明してください----- https://stackoverflow.com/questions/48130522/using-radiobuttongroup-funcitonality-across-multiple-custom-components私はskinnablecontainerをmx:UIComponentに変更しようとしましたが、 'Label'宣言は 'mx.core.IUIComponent'を実装していないので、タグ内に含まれていなければなりません。何か案は? – user3468174

関連する問題