好奇心から、私はフレックスアプリのすべての部分(一般的にはアプリのごく一部です)を最適化するように努力しています。現在、すべてのボタン/スキンの最適化に取り組んでいます。使用しているいくつかのボタンと、それらを生成するために使用しているサンプルコードをいくつかリンクしました。
これをより効率的で使いやすく、全体的に改善する方法についてアドバイスしてください。ありがとう!
ご覧のとおり、ボタンはかなり異なる場合がありますが、ルックアンドフィールは似ています。現在、次のように設定して「ステートフルスキン」を作成しています。
skin: ClassReference('com.mysite.assets.skins.NavigationButtonSkin');
次に、NavigationButtonSkinは次のようになります。
public class NavigationButtonSkin extends UIComponent {
// imports, constructor, etc
protected override function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void {
// initialize fillColors, fillAlphas, roundedCorners, etc
switch( name ){
case 'upSkin':
fillColors = [getStyle('backgroundColor'),getStyle('backgroundColor2')];
break;
// do the same for overSkin, downSkin, disabledSkin, etc
}
// use this.graphics to draw background
// use this.graphics to draw border on top of background
}
}
簡単な部分のいくつかをコメントアウトしましたが、これがこれを行うのに悪い/非効率的な方法であるかどうか、そしてどのように改善するかを教えてください。
ありがとう!