0

Flex 3 Web サイトで TileList を使用しています。rowCount と columnCount を、配列内の項目の総数の係数に設定する必要があります。たとえば、配列に 15 個の項目があるとします。次に、rowCount を 3 に、columnCount を 5 (3x5=15) に設定したいと思います。または、配列に 16 個の項目がある場合、rowCount を 4 に、columnCount を 4 (4x4=16) に設定します。問題は、配列の長さが異なることです。データベースから取得されます。

この問題を処理する方法について何か提案はありますか?

ありがとうございました。

-ラクシュミディ

4

1 に答える 1

1

TileList の dataProvider である ArrayCollection (A と呼びましょう) にアイテムをロードするところまで、プロセスはすでに完了していると思います。

その場合、次のようなものをサービス コールバックに追加するだけで、AC が作成されます。

for (var i:int=Math.sqrt(A.length)+1e-9;i>0;i-=1)
  if (A.length%i==0)
  {
    tileList.columnCount=i;
    tileList.rowCount=A.length/i;
    break;
  }

このコードは、RxC TileList を提供します。ここで、A.length が正方形の場合は R=C です。それ以外の場合は、可能な限り正方形に近くなりますが、R>C (垂直スクロールと水平スクロールのために通常は望ましいことです)。

于 2010-11-04T17:08:59.313 に答える