0

flex mobile のビューに背景を追加しました。

その行を含めない場合、次のことに気付きました。

<s:Group id="contentGroup" width="100%" height="100%" minWidth="0" minHeight="0"/>

私の画像だけが表示され、他には表示できません。非常に奇妙なことは、私が使用したことです:

new-mxml スキンとホスト コンポーネント: spark.components.View

そして、ウィザードはこの重要な行を追加しませんでした (私はサンプルでそれを見つけました):

<s:Group id="contentGroup" width="100%" height="100%" minWidth="0" minHeight="0"/>

1) それはバグですか? またはそれを行う別の簡単な方法はありますか?

2) このような他のバグを回避するために、他のコンポーネントをスキンするための良い方法はありますか? (触媒を使って? 花火を使って?)

よろしく

4

1 に答える 1

1

それはバグですか?またはそれを行う別の簡単な方法はありますか?

いいえ、それはバグではありません。クラスのスキンにはViewという名前の「スキン パーツ」があり、これは、コンポーネントがその子コンポーネントを表示するために使用するcontentGroupオブジェクトです。Viewこのスキン パーツがないと、ビューには子コンポーネントを保持するコンテナーがありません。

スキンを持つすべてのコンポーネントは、一連の「スキン パーツ」を定義します。必要なスキン パーツとそうでないスキン パーツがあります。

奇妙なことに、contentGroupスキン パーツは必須ではありません。

このような他のバグを回避するために、他のコンポーネントをスキンするための良い方法はありますか?

ドキュメントを参照して、コンポーネントが宣言しているスキン パーツを確認することをお勧めします。たとえば、コンポーネントのドキュメントの「スキン パーツ」セクションへのリンクを次に示します。Viewドキュメントの各ページの右上には、ページのこのセクションにジャンプするための「スキン パーツ」リンクがあります。

ウィザードを使用して MXML スキンを作成する場合、Flex が定義する既存のスキンの 1 つからコードをコピーするオプションがあります。これを行うと、すべてのスキン パーツと一連の Adob​​e スタイリング コードを含むコードが得られます。

元のスキンをコピーしないと、空の MXML スキンが作成されます。ただし、ウィザードはコードにコメントを作成し、スキン パーツが何であるか、およびそれらが必要かどうかを示します。View空のスキンを作成するときに得られるコメントは次のとおりです。

<!-- SkinParts
name=contentGroup, type=spark.components.Group, required=false
-->

Catalyst などの他のツールを使用することもできますが、それらは必須ではありません (とにかく Catalyst は廃止されたと思います)。ときどき、アドビのデフォルト コードを使用してスキンを作成し、不要なものを削除することから始めます。それ以外の場合は、「ごちゃごちゃ」がたくさんあるので、空白のスキンを使用します。

于 2013-06-10T18:49:27.510 に答える