イメージコンポーネントやボタンバーなどの子コンポーネントを持つSkinnableコンテナがいくつかあります。スキンを追加するとSkinnableコンテナが大きく見えるようですそのコンテナのすべての子コンポーネントが消えるようです。フレックス:SkinnableContainerがスキンされているときに子コンポーネントが消滅する
Example:
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<!-- host component -->
<fx:Metadata>
[HostComponent("path.to.skin.MySkinnableContainer")]
</fx:Metadata>
<s:states>
<s:State name="disabled" />
<s:State name="normal" />
</s:states>
<mx:Image source="@Embed('path.to.skin.AllSkinArt.swf#SkinArt')" includeIn="normal"/>
<!-- SkinParts
name=contentGroup, type=spark.components.Group, required=false
name=contentGroup, type=spark.components.Group, required=false
-->
</s:Skin>
スキニングされるコンポーネント、スキンされたときに消えるイメージコンポーネントがあります。
<s:SkinnableContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="116" height="74"
addedToStage="onAddedToStage(event)">
<fx:Script>
<![CDATA[
[Bindable]
private var _screenShot:Bitmap;
public function updateScreenShot(screenShot:Bitmap):void
{
_screenShot = screenShot;
}
protected function onAddedToStage(event:Event):void
{
//do not want the mouse to interact with this object.
this.mouseEnabled = false;
}
]]>
</fx:Script>
<s:Image
width="115"
height="82"
x="-8"
y="-109"
source="{_screenShot}"/>
</s:SkinnableContainer>
CSSドキュメント内には、スキンを設定するための次のコード行があります。
wd|MySkinnableContainer
{
skinClass: ClassReference("path.to.MySkinnableContainerSkin");
}
上記の例では、Skinはうまく動作しますが、SkinnableContainerに含まれる画像は消えます。
あなたしているコードサンプルが非常に切り捨てられます。私はあなたがしようとしていることの完全な延長を掴んでいるとは思わない。 – JeffryHouser
各パーツの完全なコードを投稿することができます。また、必要なスキンパーツとしてマークされていない場合は、スキン内のコンポーネントから一部のパーツを除外することもできます(これはあまりにも私もまだどちらかです)http://www.adobe.com/devnet/flex/articles/dynamic_skin_parts.html – shaunhusain
私は完全なコードを更新しました。これが私の問題を明確にするのに役立ちます。ありがとう。 – user1210003