Flexで親のスケーリングに関わらず子の見えを維持するには?
Flexでなくても一般的に、親コンポーネントのスケーリングが変更されると子コンポーネントもスケーリングされる。
しかし、場合によっては子コンポーネントの見えを維持したい場合がある。例えば、枠線の線幅など。
そういった場合はどうしたらよいか?例えばこうする。
Matrix.invert()を使うところがポイントだろう。
しかし、場合によっては子コンポーネントの見えを維持したい場合がある。例えば、枠線の線幅など。
そういった場合はどうしたらよいか?例えばこうする。
/**
* 親UIComponentのスケーリングに関わらず
* 線幅などの見えを維持する処理
* @param uic 見えを維持したいUIComponent
*/
public static function counterTransform(uic:UIComponent):void {
uic.transform.matrix = new Matrix();
var concatMatrix:Matrix = uic.transform.concatenatedMatrix;
concatMatrix.invert();
uic.transform.matrix = concatMatrix;
}
Matrix.invert()を使うところがポイントだろう。
コメント
コメントを投稿