タイル・レイヤーは、ロード・オンデマンドのサポート用に設計された特殊なタイプのマネージャー・レイヤーです。このレイヤーに関連付けられている IlvTileController が、インデックス・モードで動作している場合、レイヤーはタイリング・グリッドを形成する同じサイズの矩形のタイルのセットに分割されます (IlvTiledLayer のコンストラクターはモードをパラメーターとして使用します)。
タイリング・グリッドは、インデックス 0 の行と列の交点にある原点のタイルによって定義されます。「インデックス・モードでのタイリング・グリッド」を参照してください。
グリッドの他のタイルは、原点のタイルから始まる他の列と行番号で識別されます。以下のコード例は、列 10 と行 5 の交点にあるタイルの状況を表示しています。
public static void displayTileStatus(IlvTiledLayer layer) { IlvTile tile = layer.getTileController().getTile(10, 5); if(tile == null) System.out.println("The tile is not loaded yet"); else { int status = tile.getStatus(); if(status == IlvTile.LOCKED) System.out.println("The tile is locked"); else if(status == IlvTile.CACHED) System.out.println("The tile is cached"); else System.out.println("The tile is empty"); } }
上記のコード例で、 getTile メソッドはヌル値を返す場合があります。タイルの番号は非常に大きくなり、実質的に無限にもなり得るため、
IlvTile
オブジェクトはタイルがロードされるか、キャッシュにある場合にのみ割り振られます。この例のソース・コード一式は、以下のファイルにあります。