0

actionscript からではなく、mxml からカスタム コンポーネントの子のプロパティにアクセスする方法はありますか。

たとえば、コンポーネント「A」があります

<s:Group>
   <mx:UIComponent id='childA'/>
   <mx:UIComponent id='childB'/>
</s:Group>

そして、アプリケーションのどこかで私はこのようなことをしたい

<s:HGroup>
   <components:A>
      /*I want to access properties of this children objects*/
      <childA width="20"/>
      <childB color="0xFFFFFF"/>
   </components:A>

   <components:A>
      /*And here too*/
      <childA width="60"/>
      <childB color="0x000000"/>
   </components:A>
</s:HGroup>
4

1 に答える 1

1

これは ActionScript で行うことができます。ただし、MXML ではありません。ActionScript の場合:

componentAInstance.childA.width = 20;
componentAInstance.childB.setStyle('color',0xFFFFFF);

これは、カプセル化の恐ろしい破れと呼ばれるものです。「親」は、その子の実装の詳細について知る必要がないためです。

ComponentA は、自身の子のサイズと配置の方法を知っている必要があります。このチェイスでは、childA と childB を追跡します。ComponentA の親からの支援は必要ありません。

コンポーネントが相互に通信する方法については、このブログ投稿を読むと役立つ場合があります。

于 2013-06-20T10:22:20.960 に答える