0

リストの添付画像の「Hello item 1」に示されているように、グレーのオーバーレイを取り除くために、可能なすべてのスタイルをグレー以外に設定してみました。何も機能しませんでした。ListSkin クラスも調べましたが、これらを描画するものは見つかりませんでした。これらのオーバーレイを取り除く方法は?

<s:List id="list" width="100%" height="100%"
            dataProvider="{dp}"
            focusAlpha="0"
            contentBackgroundAlpha="0"
            contentBackgroundColor="0xFFFFFF"
            selectionColor="0xFFFFFF"
            downColor="0xFFFFFF"
            borderVisible="false"
            >
</s:List>

フレックス モバイル リスト

4

1 に答える 1

1

私はこれと同じことでクライアントを助けました。基本的に、長方形を描画しないようにLabelItemRemdererクラスを拡張する必要があります。あなたが変更するためのスタイルや色を介して公開されていません。

このコードを見てください(LabelItemRemdererの853行目から):

// Selected and down states have a gradient overlay as well
// as different separators colors/alphas
if (selected || down)
{
    var colors:Array = [0x000000, 0x000000 ];
    var alphas:Array = [.2, .1];
    var ratios:Array = [0, 255];
    var matrix:Matrix = new Matrix();

    // gradient overlay
    matrix.createGradientBox(unscaledWidth, unscaledHeight, Math.PI / 2, 0, 0 );
    graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, matrix);
    graphics.drawRect(0, 0, unscaledWidth, unscaledHeight);
    graphics.endFill();
}

基本的に、このコードを強制的に実行しないようにする方法が必要です。これを行うには、独自のitemRendererを最初から作成します。または、LabelItemRendererを拡張し、drawBackground()メソッドをオーバーライドして、すべての親drawBackground()コードを拡張された子にコピーすることもできます。マイナス上のブロック。

色がスタイルか何かとして露出するのを見たいです。オーバーレイを完全に消滅させるために使用できる魔法のプロパティ(またはスタイル)を見てみたいです。これをバグとしてApacheFlexJiraに自由にログインしてください。

于 2012-04-06T14:51:55.317 に答える