-1

私は Flex に比較的慣れていませんが、ちょっとした危機の後、アプリケーションのメンテナンスと開発を引き継ぐ必要がありました。それが助けになるなら、私は一般的にAS3とOOPに精通しています。

このアプリケーションは、Flex builder 3、Flex SDK 4.1 を使用して構築され、Halo テーマに基づいています。Main.mxml には、いくつかのナビゲーションの小片、アプリケーション ボーダー、およびプレースホルダーという名前のキャンバスが含まれています。

ユーザーがサイト内を移動すると、Main.mxml の状態が変更され、それに基づいて、適切な「画面」がアニメーションを適用せずにプレースホルダー内で交換されます (データが読み込まれるまで ProgressBar の進行が停止する場合があります)。各画面は、メイン アプリケーションと同じサイズで、a に基づいており、mx:Canvas0,0 に位置するように設定されているため、ウィンドウ全体が表示されます。

まず、これは良いアプローチですか。変更すべき点について何か提案はありますか?

次に、一部の画面がレイアウトと配置で奇妙なジャンプに苦しんでおり、私の人生では理由がわかりません. 多くの視覚要素で発生しています。

私の最初の例は、hbox、画像、およびテキスト コントロールを使用して作成されたボタンです。hbox はグラデーションの背景を含むように変更されましたが、デフォルトの mx hbox を使用すると問題が発生します。最初の画像はインタラクションのない最初のレンダリングで、2 番目はマウスをその上に置いた後、3 番目の (そして正しい) 画像はその画面を離れてから戻った後のものです。クリップされていないことに注意してください。右側の角も丸くなっています。

例 1

私の 2 番目の例はキャプチャするのが難しいですが、flexlib の高度なボタン スキンに基づいて、一連の 4 つのグラデーション ボタンがmx:vbox. 最初の表示では正しく、2 番目の表示では正しく表示されますが、ホバーすると何かが変わるように見えますが、ホバーしたボタンごとに下のボタンが約 1 ピクセル下にジャンプする原因がわかりません。各ボタンがそのジャンプを引き起こした後、すべてが再び問題ありません。

最後に、前の画面に戻ると、画面全体が表示された直後にわずかに左にジャンプして表示され、非常にぎくしゃくした外観になります。

助けてくれてありがとう

編集 - 成功

あなたの提案を何時間も試し、ステージから要素を1つずつ削除することをいじった後、最終的に問題の原因がコントロールのborderMetricsプロパティであることがわかりましたVideoDisplay。これらを削除した後 (そもそもなぜそこにあったのかさえわかりません)、私が苦しんでいた奇妙な表示の問題はすべて解消されました。

提案に感謝します!

4

2 に答える 2

0

ボタンのコードを投稿して分析できるようにすることをお勧めしますが、表示されているのは、コンポーネント自体が複数回測定された結果です。私が過去にこれに対処した方法は、コンポーネントとそのサブコンポーネントに明示的なサイズを設定するか、コンポーネント/サブコンポーネントに慎重に配置された minWidth="0" プロパティを追加することです。後者は、コンポーネントにそれ自体を適切に測定させるための古いトリックです。それが役立つことを願っています。そうでない場合は、コードを投稿してください。幸運を。

于 2011-01-18T16:08:06.610 に答える
0

あなたの提案を何時間も試み、ステージから要素を1つずつ削除することをいじった後、最終的に問題の原因がVideoDisplayコントロールのborderMetricsプロパティであることを発見しました。これらを削除した後 (そもそもなぜそこにあったのかさえわかりません)、私が苦しんでいた奇妙な表示の問題はすべて解消されました。

于 2011-01-21T12:01:04.110 に答える