Flex-4 Beta2:背景画像が機能しなくなりました
-
06-07-2019 - |
質問
プロジェクトをFlex4 Beta1からBeta2にアップグレードした後、背景画像スタイルがHaloコンポーネントでサポートされなくなったことがわかりました。
例:
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
backgroundImage="@Embed(source='myImage.png')" />
jiraの問題 SDK-23050 は以下を指摘していることに注意してください:
backgroundImageは、Sparkスキンではサポートされていません。
ただし、これはSparkスキンではなく、標準のHaloコンポーネントを使用しています。
アイデアはありますか?
解決 4
私はbackgroundImageをbackgroundSkinに変更することになり、問題は解決しました。
他のヒント
<s:BorderContainer x="100" y="100" width="200" height="200"
backgroundImage="@Embed(source='image.jpg)" >
</s:BorderContainer>
上記のコードを使用します。 spark:BorderContainerには、オプションbackgroundImage、他のbackgroundImageオプションがあります。目的の画像をソースに追加し、image.jpgに画像名と拡張子を付けます。単一引用符を忘れないでください。
ここでスキンクラスを作成する必要があります。 VGroupを使用して、カスタムメイドのスキンを指定します。
Flex 4のMXコンポーネントでは、Sparkスキンを使用できます。AdobeはデフォルトでSparkスキンを使用するため、同じアプリケーション内のMXコンポーネントとSparkコンポーネントは一緒に属しているように見えます。明らかに、SparkスキンはHaloスキンとは異なる機能をサポートしており、異なる外観にしたい場合はスキンを微調整する必要があります(いくつかのシンプルなカラースタイルを除く)。創造的なデザイナーの可能性を考えると、これはCSSのみを使用するよりもはるかに優れたアプローチです。柔軟性が非常に高いためです。
デフォルトのスキンをコピーして背景を追加するのはそれほど難しくありません。ただし、必要に応じて、古いHaloスキンを使用してbackgroundImageサポートを取得することもできます。 VBoxにmx.skins.halo.HaloBorderを使用するように伝えたいと思います。