-2

リストのデータ プロバイダーを更新するときに、リスト項目の合計時間を取得したいと考えています。つまり、データプロバイダーを変更すると、両方の新しいアイテムをロードするのに何ミリ秒かかりますか.
例: データ プロバイダーに 3 つの項目があり、リストへの読み込みに 2 ミリ秒かかります。50 個のアイテムをプッシュすると、15 ミリ秒になる可能性があります。mx.events.ListEvent
を確認しましたが、適切な解決策が見つかりませんでした。ご意見をお待ちしております。

4

1 に答える 1

0

独自のクラスを作成して mx:List を拡張します。以下を参照してください。

package classes
{
    import flash.utils.getTimer;

    import mx.controls.List;

    public class ListCustom extends List
    {

        private var _time:Number;

        public function ListCustom()
        {
            super();
        }

        override public function set dataProvider(value:Object):void
        {
            _time = getTimer();

            super.dataProvider = value;
        }

        override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
        {
            super.updateDisplayList(unscaledWidth, unscaledHeight);

            if (!isNaN(_time))
            {
                var delay:Number = getTimer() - _time;

                _time = NaN;

                trace("delay", delay);
            }
        }
    }
}
于 2013-03-05T15:51:01.877 に答える