0

オブジェクトのバリデーターを繰り返し処理したいと思います。バリデーターは、declarationsタグで宣言する必要があります。宣言をどのようにスクロールしますか?できない場合は、オブジェクトのすべてのプロパティをスクロールする以外に、すべてのバリデーターを見つける方がよいでしょうか。

4

2 に答える 2

2

バリデーターをコレクション(たとえば配列)に入れるだけです。その後、コレクションのアイテムをループするだけです。

<fx:Declarations>
    <fx:Array id="validators">
        <mx:StringValidator source="{firstnameInput}" property="text" required="true" />
        <mx:StringValidator source="{lastnameInput}" property="text" required="true" />
        <mx:EmailValidator source="{emailInput}" property="text" required="true" />
        <mx:DateValidator source="{dateInput}" property="text" required="false" />
    </fx:Array>
</fx:Declarations>

次に、単に'validateAll()'を使用できます。

Validator.validateAll(validators);

またはバリデーターをループします:

for each (var validator:Validator in validators) { ... }
于 2012-04-04T09:31:50.310 に答える
1

あなたの質問を正しく理解しているかどうかはわかりませんが、クラスのすべてのプロパティ(メタタグを含む)を繰り返し処理する場合は、describeTypeを使用できます。

メタタグを含めるには、適切なコンパイラオプションがkeep-as3-metadata正しく設定されていることを確認してください。

于 2012-04-04T06:34:32.200 に答える